PCI 3.1合规性和.net C#应用程序w / SSL

时间:2018-02-09 16:13:05

标签: c# .net ssl pci-compliance

如何解决在用户在其系统上应用有关SSL 3.0和TLS 1.0传入和传出流量的PCI 3.1标准后使用SSL连接到外部服务器的损坏的.net 3.5,C#应用程序?

1 个答案:

答案 0 :(得分:-2)

我想在问题开始之前将其解决。我最近有一个客户端将其PCI兼容性升级到3.1,其中SSL 3.0或TLS 1.0流量不再允许进出系统。相反,TLS 1.1和1.2目前是安全连接的主要驱动因素。如果您有一个连接外部HTTPS站点或使用安全SQL连接到服务器的.net C#应用程序,那么您需要做一些事情。

首先,将您的应用.net版本更新为4.5或更高版本。 4.5之前的.net版本默认情况下不具备使用TLS 1.1和1.2的能力。如果你有一个小应用程序并希望保留.net 3.5,你可以让客户使用以下链接更新他们的PC:.net 3.5 TLS

其次,如果您使用.net 4.5,则需要在与外部站点建立安全连接之前在代码中添加一行。 (在4.6或更高版本的情况下,建议TLS 1.2已经是默认值,可能不需要此附加代码。)此代码将告诉您的.net 4.5应用程序在进行任何尝试之前默认为TLS 1.1或TLS 1.2其他方法,如SSL 3.0。

System.Net.ServicePointManager.SecurityProtocol =  
    SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12;  

我希望这会有所帮助。以下是PCISecurityStandards.org的一份文件,描述了2018年6月3.1合规期限:PCI 3.1 Deadline