Я создал службу wcf и мог УСПЕШНО отослать ее в клиентское приложение.Но проблема возникает, когда я внедряю сертификат X509.
1) когда я изменяю службу на использование сертификата x509, я не смог создать прокси, так как конечные точки mex не отображаются в браузере.Итак, в таком случае, как я должен ссылаться на службу в клиентском приложении, если служба защищена, а конечные точки mex не открыты?
2) Могу ли я использовать безопасность сообщений и транспорта в качестве сертификата?Будет ли этот сценарий работать для basicHttpBinding?Я слышал, что basicHttpBinding не может обеспечить безопасность сообщений с помощью сертификата.
Любая помощь в этом отношении будет высоко оценена.
Вот моя модель сервиса в Сервисе.
<system.serviceModel>
<client>
<endpoint behaviorConfiguration=""
binding="basicHttpBinding"
bindingConfiguration="WCFServiceX509Binding"
contract="WCFService.Contract.Service.IWCFServiceContract"
name="WCFServiceClientEndPoint" />
</client>
<bindings>
<basicHttpBinding>
<binding name="WCFServiceX509Binding" maxBufferSize="6553600"
maxBufferPoolSize="52428800" maxReceivedMessageSize="6553600">
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="Certificate" />
<message clientCredentialType="Certificate" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<services>
<service behaviorConfiguration="ServiceBehavior"
name="WCFService.Model.WCFServiceModel">
<endpoint
address=""
binding="basicHttpBinding"
bindingConfiguration="WCFServiceX509Binding"
name="WCFServiceBasicHttpEndPoint"
contract="WCFService.Contract.Service.IWCFServiceContract">
<identity>
<certificateReference findValue="WCFUADOCServer" />
</identity>
</endpoint>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceCredentials />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="ClientCertificateBehavior">
<clientCredentials>
<clientCertificate findValue="WCFUADOCServer"
x509FindType="FindBySubjectName"
storeLocation="LocalMachine"
storeName="TrustedPeople" />
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>
Большое спасибо, Чанд.