Как я могу реализовать хранилище ключей (сертификат) soapui в C #? - PullRequest
0 голосов
/ 09 ноября 2018

Я отправил запрос и получил ответ от веб-службы, использующей SOAPUI

Для этого я добавил свой сертификат клиента в SOAPUI -> Настройки -> Настройки SSL

И это сработало успешно. (Я получаю ошибку рукопожатия ssl, если я не добавляю хранилище ключей и пароль) enter image description here

Моя проблема в том, что я не смог реализовать это (возможность хранения ключей мыла) в коде C #. Ниже мой код и ошибка, которую я получаю.

enter image description here

Ответы [ 2 ]

0 голосов
/ 18 ноября 2018

Наконец-то я разобрался с проблемой.

Вы должны установить сертификат клиента при создании экземпляра веб-службы. Кстати, параметры ClientCredentials.ServiceCertificate.SslCertificateAuthentication предназначены только для игнорирования действующего сертификата сервера.

        X509Certificate2 x509 = Utils.GetZBCertificate();
        ClientCredentials.ServiceCertificate.SslCertificateAuthentication = new System.ServiceModel.Security.X509ServiceCertificateAuthentication();
        ClientCredentials.ServiceCertificate.SslCertificateAuthentication.CertificateValidationMode = System.ServiceModel.Security.X509CertificateValidationMode.None;
        ChannelFactory.Credentials.ClientCertificate.Certificate = x509;
0 голосов
/ 12 ноября 2018

Вы можете прикрепить свои сертификаты к событию конечной точки.

...