【发布时间】:2014-02-20 03:03:39
【问题描述】:
我正在使用带有 C# 的 WCF 服务。 我通过设置客户端和服务证书来使用传输安全模式。
在操作过程中,我想更改我正在使用的证书并使用由其他 CA 签名的证书。
是否可以在运行过程中更改这些证书而无需重新启动服务主机?如果有怎么办?
如果我只是调用设置证书并通过其他证书就足够了吗:
serviceHost.Credentials.ServiceCertificate.SetCertificate(...)
serviceHost.Credentials.ClientCertificate.SetCertificate(...)
有人遇到过这个问题并解决了吗?
【问题讨论】:
-
您为什么要这样做?在任何情况下,更改其中一个或两个都最有可能导致通道故障,需要重新建立连接。那是假设您甚至可以更改它们-我对此表示怀疑,因为大多数东西都是在打开主机或客户端之前设置的并且无法更改。
-
很遗憾,如果不重新启动 Web 服务,您将无法更改证书。我对此进行了广泛的研究。没有办法做到这一点。对不起
-
感谢 cmets。
-
@Brian:我很抱歉。在发布我的答案之前,我没有看到您的评论。发表您的评论作为答案,以便 OP 将其标记为解决方案。
标签: c# wcf security service transport