0

WinRT'de bir istemci sertifikasını bir SOAP istemci isteğine eklemek mümkün mü? Önceki sürümlerde sadece yapacağını:WinRT UWP İstemci Sertifikası'nı bir Web hizmeti isteğine ekleme

MyServiceSoapClient client = new MyServiceSoapClient() 
X509Certificate2 cert = CertificateHelper.GetClientCertificate(); 
client.ClientCredentials.ClientCertificate.Certificate = cert; 

Ama İstemciSertifikası özelliği artık kullanılabilir olmasını görünmüyor. UWP'de bunu nasıl başardım?

Teşekkür ederiz.

cevap

0

bu deneyin:

var client = new ServiceClient(); 
client.Endpoint.Address = new EndpointAddress(url); 

BasicHttpBinding binding = client.Endpoint.Binding as BasicHttpBinding; 
binding.Security.Mode = BasicHttpSecurityMode.Transport; 
binding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Certificate; 

client.ClientCredentials.ClientCertificate.Certificate = ... 

Sen gereksinimleri :) uyacak şekilde sertifika düzenleyebilirsiniz

https://msdn.microsoft.com/en-ca/library/mt185502.aspx

Servis Müşteri Belgeleri bakınız: https://social.msdn.microsoft.com/Forums/sqlserver/en-US/f1b8ef52-8c3e-417c-94b9-ba2a545e9beb/uwp-app-making-soap-call-requiring-clientcredential?forum=wpdevelop

+0

teşekkür - Ama bu denediğim aynı şeydir; Sorun, ClientCredentials artık ClientCertificate özelliğine sahip değil. Ben bu iş parçacığı okuduktan sonra bir ServiceClient kullanarak sertifika ile bir web servis çağrı yapmak mümkün değildir. Alternatif yollar bilen var mı? – Necromesa

+0

Bunu bir cevap olarak işaretliyorum çünkü yapmak istediğim şeyin henüz mümkün olmadığına işaret ediyor. Sabun mesajını elle oluşturarak ve HttpClient kullanarak göndererek bunu yapmayı başardım. Gerçekten de servis referansı ile bunu yapmak istedim. – Necromesa