WCF传输安全性,动态更改证书

时间:2014-01-28 16:59:05

标签: c# wcf security service transport

我正在使用C#的WCF服务。 我通过设置客户端和服务证书来使用传输安全模式。

在操作过程中,我想更改我正在使用的证书,并使用其他CA签署的证书。

是否可以在不重启服务主机的情况下在操作过程中更改这些证书?如果是这样的话?

如果我只是调用set certificate并传递其他证书就足够了:

serviceHost.Credentials.ServiceCertificate.SetCertificate(...)
serviceHost.Credentials.ClientCertificate.SetCertificate(...)

有人遇到过这个问题并解决了吗?

2 个答案:

答案 0 :(得分:0)

我已将此测试视为高可用性问题。你不能这样做。该服务在ServiceHost打开时获取其证书,而不再重新获得。

如果您的目标是支持HA,则需要将多个服务放在负载均衡器后面并逐个重新启动它们。

答案 1 :(得分:0)

不幸的是,如果不重新启动Web服务,则无法更改证书。我对此进行了广泛的研究。没有办法做到这一点。对不起