Я пытаюсь реализовать самообслуживаемую WCF-службу, которая должна использовать аутентификацию клиента по сертификату. К сожалению, аутентификация не удалась. В файле журнала говорится, что клиент не предоставляет сертификат. Если вы пытаетесь связаться с сервисом через firefox, в нем говорится: «Ошибка 403 - Запрещено».selfhosted WCF-Service + проверка подлинности сертификата клиента
Следующий код показывает конфигурацию через файл app-config.
<serviceBehaviors>
<behavior name="sslbehaviour">
<serviceMetadata httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true"/>
<serviceCredentials>
<clientCertificate>
<authentication certificateValidationMode="ChainTrust" trustedStoreLocation="CurrentUser"/>
</clientCertificate>
<serviceCertificate findValue="cert-thumb-print" x509FindType="FindByThumbprint" storeLocation="CurrentUser" storeName="My"/>
</serviceCredentials>
</behavior>
</serviceBehaviors>
endpoint address="https://localhost:443/service" binding="wsHttpBinding"
bindingConfiguration="BindingForResultPost" contract="MobD.IEndpointService" />
ГЗС ошибка: System.ServiceModel.Channels.HttpsClientCertificateNotPresent.aspx
я думаю, что я создал и правильно установлены мои сертификаты.
Я был бы очень благодарен за любой намек ...
С наилучшими пожеланиями, Майкл
Не должен ли firefox запрашивать у меня сертификат, когда я подключаюсь к службе? Как получить субкод? например 403.x - я просто вижу основной код ... я уже пробовал использовать скрипач, но, к сожалению, выход был не очень полезен. Клиентский сертификат, а также его root-ca установлен на клиентской машине. – user1168876
Это окно Windows? Firefox не использует хранилище сертификатов Windows, как это делают IE и Chrome. Он имеет свой собственный магазин, поэтому вам также нужно установить его там (или протестировать с помощью одного из IE или Chrome). Предполагая, что вы используете IIS7 или выше, я думаю, вам нужно настроить подробные коды ошибок - по соображениям безопасности он не включен по умолчанию, поскольку он дает слишком много информации для общественного потребления. –
Да, это Windows. Я уже пытался поставить сертификаты в хранилище firefox. Похоже, что WCF-Service не запрашивает сертификат. Где я могу активировать код ошибки деталей? это самообслуживаемое приложение - это конфигурация iis nescessary? – user1168876