2014-06-11 2 views
0

Я хочу написать службу WCF (самообслуживание), которая должна использовать https. При поиске в Интернете, я нашел статью в блоге на MSDN, что говорит мне использовать команду «netsh.exe», чтобы связать сертификат на конечную точку по командной строке: http://blogs.msdn.com/b/james_osbornes_blog/archive/2010/12/10/selfhosting-a-wcf-service-over-https.aspxSelfhosting услуга WCF по Https

Однако, это еще состояние из Изобразительное искусство? Почему бы не использовать: http://msdn.microsoft.com/de-de/library/system.servicemodel.description.servicecredentials.servicecertificate(v=vs.100).aspx

Или мне что-то не хватает? Спасибо за любую помощь.

+0

Действительно никто? Нужно ли мне привязывать сертификат к порту с помощью командной строки (netsh)? Кажется, что SetCertificate недостаточно для создания https-соединения. – DanielG

ответ

0

Так что я, наконец, понял, почему мне нужно использовать NETSH команду:

Проверить эту статью: https://msdn.microsoft.com/en-us/library/ms789011%28v=vs.110%29.aspx

Из этой статьи: Если транспорт HTTP (с использованием WsHttpBinding), SSL через HTTP обеспечивает безопасность на уровне транспортного уровня. В этом случае необходимо установить компьютер, на котором размещена служба, с сертификатом SSL , связанным с портом, как показано ниже в этом разделе. Если транспорт является TCP (с использованием NetTcpBinding), по умолчанию безопасность на уровне транспортного потока предоставляется как безопасность Windows, так и SSL через TCP. При использовании SSL через TCP вы должны указать сертификат, используя метод SetCertificate, , как показано ниже в этом разделе.

Таким образом, вы можете использовать свойство для привязки tcp. Если вы используете ssl через http, вам необходимо привязать сертификат к порту командой netsh

Смежные вопросы