У нас есть центральная служба WCF, которую мы предоставляем через netTcpBinding для дуплексной связи с клиентами.
Мы хотим разрешить только определенным компьютерам в Интернете связываться с этой службой WCF. Путь, по которому мы идем, - использовать сертификаты X509 для защиты транспортного уровня и обеспечения аутентификации клиента, например:
<security mode="Transport">
<transport clientCredentialType="Certificate"></transport>
<message clientCredentialType="None"/>
</security>
В настоящий момент мы вызываем MakeCert для генерации сертификатов X509 и указываем certificateValidationMode="PeerTrust"
, чтобы обойти тот факт, что мы сгенерировали наши собственные самозаверяющие сертификаты.
У меня вопрос: как нам управлять сертификатами клиентов? Мы не хотим, чтобы каждый клиент покупал собственный сертификат - их могут быть сотни, и это не вариант. Я полагаю, мы хотим действовать как наш собственный «коренной авторитет», но я не знаю, как это сделать ...