提问人:Deven Hill 提问时间:5/25/2023 更新时间:5/25/2023 访问量:61
将证书附加到 SOAP 客户端。C#
Attach Certificate to SOAP Client. C#
问:
我得到了一个 wsdl 文件(第一次使用这种类型的软件)并将其导入到我的项目中。我从该 wsdl 引用创建了一个客户端,并尝试将证书附加到客户端。我可以确认在代码中设置了证书,但是当我尝试发出请求时,我收到异常,因为请求未与证书一起发送。
ServicePointManager.ServerCertificateValidationCallback = (obj, certificate, chain, errors) => true;
StringBuilder sb = new StringBuilder();
var binding = new BasicHttpBinding();
binding.Security.Mode = BasicHttpSecurityMode.Transport;
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate;
MyServiceClient client = new MyServiceClient(binding, new EndpointAddress(myEndpoint));
try
{
client.ClientCredentials.ClientCertificate.SetCertificate(StoreLocation.LocalMachine, StoreName.My, X509FindType.FindByThumbprint, certThumbprintString);
client.ClientCredentials.ServiceCertificate.Authentication.CertificateValidationMode = System.ServiceModel.Security.X509CertificateValidationMode.PeerTrust;
var response = await client.sendRequest(XMLData);
}
在 sharkwire 中,它还说我缺少证书(查看图片)。如何在 C# 中设置证书,但不能在请求中发送?我的代码有问题吗?是证书吗?同样,这对我来说都是全新的,所以任何事情都有帮助。提前致谢!
(https://i.stack.imgur.com/eirgF.png)
我尝试更改绑定,不同的证书,投入了大量日志记录,并出现了所有相同的例外“被策略拒绝”。
答: 暂无答案
评论