Не уверен, что это может вам помочь, но я оглянулся на то, как я настроил свой app.config для простого безопасного сервиса, который я написал несколько недель назад, когда использовал сертификаты. Вот несколько соображений, которые вам, возможно, понадобится сделать, чтобы правильно настроить конфигурацию для службы:
<bindings>
<wsHttpBinding>
...
<security>
<transport clientCredentialType="Certificate" />
</security>
</wsHttpBinding>
</bindings>
Теперь в моей конфигурации определено поведение конечной точки, которое предоставляет метаданные, чтобы сообщить службе, что клиент будет использовать для сертификата на своей стороне:
<behaviors>
<endpointBehaviors>
<behavior name="ClientBehavior">
<clientCredentials>
<clientCertificate findValue="WcfClient" storeLocation="LocalMachine" storeName="My"
x509FindType="FindBySubjectName"/>
<serviceCertificate>
<authentication certificateValidationMode="PeerTrust" />
</serviceCertificate>
</clientCredentials>
</behavior>
</endpointBehaviors>
</behaviors>