ClientCredentials.ServiceCertificate Property


Gets an object used to specify a service's X.509 certificate.

Namespace:   System.ServiceModel.Description
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public X509CertificateRecipientClientCredential ServiceCertificate { get; }

Property Value

Type: System.ServiceModel.Security.X509CertificateRecipientClientCredential

An X509CertificateRecipientClientCredential that represents the certificate to use for a particular service.

You can use the object returned by this property to configure the certificate's properties by calling its members.

You can specify a single default certificate as well as a different certificate to be used when communicating with a particular URI.

Through this class, you also control the authentication settings for service certificates negotiated through SSL/TLS negotiation performed at the message level.

This property does not always have to be specified. Whether it is required depends on the authentication mode and negotiation options set on the binding that is used to communicate with the service. Some relevant classes that control this behavior are MessageSecurityOverHttp and MessageSecurityOverTcp.

You can also set this value using the <certificate> for <identity> element in a client application configuration file.

This code shows how to use this property to get the service's certificate and set its properties.

X509CertificateRecipientClientCredential rcc =

X509Certificate2 cert = new X509Certificate2();
rcc.ScopedCertificates.Add(new Uri(""), cert);

.NET Framework
Available since 3.0
Return to top