作为PCI遵从性测试的一部分,我们发现使用传输级别安全性和证书保护的WCF net.tcp端点允许SSLv2连接。我们的服务是自托管的,所以我们不使用IIS来承载它们,因此我认为基于IIS的解决方案将无法工作。
在浏览了大量MSDN页面之后,我们还没有找到一种方法来告诉WCF连接使用什么版本的SSL。
为了符合PCI要求,我们要求连接只接受SSLv3而不接受SSLv2。
是否有人知道如何在WCF连接(主机和客户端)上设置强制SSL版本,或者是否有一种更好的方法来解决整个windows机器的问题?。
发布于 2012-10-24 15:06:40
不确定是否应该在服务器故障时更好地询问这一点。
它是一个.NET应用程序吗?您可能想看看ServicePointManager.SecurityProtocol。
此外,您还可以尝试以下操作,例如Windows 2008。它应该是系统范围的,而不是IIS特定的。打开命令提示符,导航到服务器上的Start > Run > cmd,然后执行以下语句:
REG ADD "HKLM\System\CurrentControlSet\Control\SecurityProviders\SChannel\Protocols\SSL 2.0\Server" /v Enabled /t REG_DWORD /d 0 /f
REG ADD "HKLM\System\CurrentControlSet\Control\SecurityProviders\SChannel\Protocols\SSL 2.0\Client" /v Enabled /t REG_DWORD /d 0 /f
REG ADD "HKLM\System\CurrentControlSet\Control\SecurityProviders\SChannel\Protocols\SSL 3.0\Server" /v Enabled /t REG_DWORD /d 1 /f
REG ADD "HKLM\System\CurrentControlSet\Control\SecurityProviders\SChannel\Protocols\SSL 3.0\Client" /v Enabled /t REG_DWORD /d 1 /f
REG ADD "HKLM\System\CurrentControlSet\Control\SecurityProviders\SChannel\Protocols\TLS 1.0\Server" /v Enabled /t REG_DWORD /d 1 /f
REG ADD "HKLM\System\CurrentControlSet\Control\SecurityProviders\SChannel\Protocols\TLS 1.0\Client" /v Enabled /t REG_DWORD /d 1 /f之后,如果您试图用SSLv2连接到服务器,那么现在应该会收到一个错误。
https://stackoverflow.com/questions/13051571
复制相似问题