Как создать соединение WCF net.tcp, которое ведет себя как анонимный сеанс HTTPS? - PullRequest
0 голосов
/ 23 февраля 2010

Я пытаюсь установить соединение WCF, используя сертификат на сервере для аутентификации сервера и шифрования данных между клиентом и сервером.

Я настроил серверную часть следующим образом:

  //  Create the Service
  serviceHost = new ServiceHost(typeof(CIncommingWCFObject));

  //  Now Create the Binding
  NetTcpBinding tcpb = new NetTcpBinding();

  //  Set  the Security to use a certificate for both enctyption and signing...
  tcpb.Security.Mode = SecurityMode.TransportWithMessageCredential;
  tcpb.Security.Message.ClientCredentialType = MessageCredentialType.Certificate;
  tcpb.Security.Transport.ClientCredentialType = TcpClientCredentialType.None;
  tcpb.Security.Transport.ProtectionLevel = System.Net.Security.ProtectionLevel.EncryptAndSign;
  serviceHost.AddServiceEndpoint(typeof(IDatabaseServer), tcpb, Params.Uri);

  //  Define the Servers Certificate
  serviceHost.Credentials.ServiceCertificate.SetCertificate(StoreLocation.CurrentUser, StoreName.My, X509FindType.FindBySubjectName, Params.CertificateName);

  //  And then open the socket...
  serviceHost.Open();

Что позволяет открывать Сервис.

Однако мои попытки определить клиентский конец, который может подключиться к этому, потерпели неудачу.

Кто-нибудь может направить меня в правильном направлении?

С уважением,

Mic

1 Ответ

0 голосов
/ 01 октября 2010

Эта статья может помочь:

Основы безопасности WCF

...