【发布时间】:2014-07-16 11:48:40
【问题描述】:
我正在使用 Winforms 客户端连接到托管在 IIS 中的 WCF 服务。 Winforms 应用程序可供客户下载并安装在他们的计算机上。客户必须使用他们的用户名/密码登录应用程序。我想要客户端应用程序和 WCF 之间启用安全 HTTPS 的通信。提供这种功能的最佳实践是什么?我应该使用客户端证书还是只使用服务器证书?非常感谢任何输入。 谢谢。
【问题讨论】:
我正在使用 Winforms 客户端连接到托管在 IIS 中的 WCF 服务。 Winforms 应用程序可供客户下载并安装在他们的计算机上。客户必须使用他们的用户名/密码登录应用程序。我想要客户端应用程序和 WCF 之间启用安全 HTTPS 的通信。提供这种功能的最佳实践是什么?我应该使用客户端证书还是只使用服务器证书?非常感谢任何输入。 谢谢。
【问题讨论】:
你必须有一个服务器证书。
如果您想要更强的身份验证,您可以使用客户端证书。但是,存在证书管理费用和潜在的其他成本:使用来自提供商的证书、自己生成证书、维护撤销列表等等。
【讨论】:
由于您已经使用密码对用户进行了身份验证,因此不需要客户端证书身份验证。为确保通信安全,请使用自签名服务器证书。如果客户端需要验证他们是否连接到正确的服务器,那么您需要从第三方 CA (如威瑞信)获得签名证书,这可能会花费您至少 100 美元。
【讨论】: