У меня есть служба IIS ASP. NET, которая должна выполнять вызовы к другой службе IIS через https WCF, где другой службе требуется сертификат клиента.
После данного руководства , я добавил следующий код (на стороне источника):
WSHttpBinding binding = new WSHttpBinding();
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate;
binding.Security.Mode = SecurityMode.Transport;
m_wcfProxy = new IISSecurityServices.SecurityServiceClient();
m_wcfProxy.Endpoint.Binding = binding;
m_wcfProxy.Endpoint.Address = new EndpointAddress(m_wcfProxyEndpointAddress);
m_wcfProxy.ClientCredentials.ClientCertificate.Certificate = new X509Certificate2("D:\\0\\SslClientCert.cer"); ;
Единственное отличие, приведенное выше, заключается в том, что я загружаю сертификат (который является тем же сертификатом, который используется целевой службой) из file.
Теперь, когда я звоню, я получаю следующую ошибку:
HTTP-запрос был запрещен с помощью схемы аутентификации клиента 'Anonymous'
Я не вижу, что я здесь упустил.
У кого-нибудь есть идеи, почему это не работает для меня?
Заранее спасибо