X509CertificateInitiatorClientCredential.SetCertificate X509CertificateInitiatorClientCredential.SetCertificate X509CertificateInitiatorClientCredential.SetCertificate Method

Definition

Gibt das Zertifikat an, das für die Darstellung des Diensts verwendet wird.Specifies the certificate to use to represent the service.

Überlädt

SetCertificate(String, StoreLocation, StoreName) SetCertificate(String, StoreLocation, StoreName) SetCertificate(String, StoreLocation, StoreName)

Ermöglicht Ihnen das Zertifikat festzulegen, das Sie zum Darstellen des Diensts verwenden, indem Sie den definierten Betreffnamen angeben.Allows you to specify the certificate to use to represent the service by specifying the subject distinguished name.

SetCertificate(StoreLocation, StoreName, X509FindType, Object) SetCertificate(StoreLocation, StoreName, X509FindType, Object) SetCertificate(StoreLocation, StoreName, X509FindType, Object)

Ermöglicht Ihnen das Zertifikat festzulegen, das Sie zum Darstellen des Clients verwenden, indem Sie Abfrageparameter wie die folgenden verwenden: storeLocation, storeName, findType und findValue.Allows you to specify the certificate to use to represent the client by specifying query parameters such as storeLocation, storeName, findType and findValue.

SetCertificate(String, StoreLocation, StoreName) SetCertificate(String, StoreLocation, StoreName) SetCertificate(String, StoreLocation, StoreName)

Ermöglicht Ihnen das Zertifikat festzulegen, das Sie zum Darstellen des Diensts verwenden, indem Sie den definierten Betreffnamen angeben.Allows you to specify the certificate to use to represent the service by specifying the subject distinguished name.

public:
 void SetCertificate(System::String ^ subjectName, System::Security::Cryptography::X509Certificates::StoreLocation storeLocation, System::Security::Cryptography::X509Certificates::StoreName storeName);
public void SetCertificate (string subjectName, System.Security.Cryptography.X509Certificates.StoreLocation storeLocation, System.Security.Cryptography.X509Certificates.StoreName storeName);
member this.SetCertificate : string * System.Security.Cryptography.X509Certificates.StoreLocation * System.Security.Cryptography.X509Certificates.StoreName -> unit

Parameter

subjectName
String String String

Definierter Betreffname.Subject distinguished name.

storeLocation
StoreLocation StoreLocation StoreLocation

Der Speicherort des Zertifikatspeichers, den der Dienst zum Abrufen des Dienstzertifikats verwendet.The location of the certificate store the service uses to obtain the service certificate.

storeName
StoreName StoreName StoreName

Gibt den Namen des X.509-Zertifikatsspeichers an, der geöffnet werden soll.Specifies the name of the X.509 certificate store to open.

Beispiele

Im folgenden Codebeispiel wird das zu verwendende Zertifikat angegeben.The following code specifies the certificate to use.

// Create a WSHttpBinding and set its security properties. The
// security mode is Message, and the client is authenticated with 
// a certificate.
EndpointAddress ea = new EndpointAddress("http://contoso.com/");
WSHttpBinding b = new WSHttpBinding();
b.Security.Mode = SecurityMode.Message;
b.Security.Message.ClientCredentialType =
    MessageCredentialType.Certificate;

// Create the client with the binding and EndpointAddress.
CalculatorClient cc = new CalculatorClient(b, ea);

// Set the client credential value to a valid certificate.
cc.ClientCredentials.ClientCertificate.SetCertificate(
    "CN=MyName, OU=MyOrgUnit, C=US",
    StoreLocation.CurrentUser, 
    StoreName.TrustedPeople);

Hinweise

Weitere Informationen über den subjectName-Parameter finden Sie unter SubjectName.For more information on the subjectName parameter, see SubjectName.

Werte für storeLocation sind in der StoreLocation-Enumeration enthalten:Values for storeLocation are included in the StoreLocation enumeration:

  • LocalMachine: Der dem lokalen Computer zugewiesene Zertifikatsspeicher (Standardeinstellung).LocalMachine: the certificate store assigned to the local machine (default).

  • CurrentUser: Der vom aktuellen Benutzer verwendete Zertifikatsspeicher.CurrentUser: the certificate store used by the current user.

Wenn die Clientanwendung über ein Systemkonto ausgeführt wird, befindet sich das Zertifikat in der Regel in LocalMachine.If the client application is running under a system account, then the certificate is typically in LocalMachine. Wenn die Clientanwendung über ein Benutzerkonto ausgeführt wird, befindet sich das Zertifikat in der Regel in CurrentUser.If the client application is running under a user account, then the certificate is typically in CurrentUser.

Werte für storeName sind in der StoreName-Enumeration enthalten.Values for storeName are included in the StoreName enumeration.

SetCertificate(StoreLocation, StoreName, X509FindType, Object) SetCertificate(StoreLocation, StoreName, X509FindType, Object) SetCertificate(StoreLocation, StoreName, X509FindType, Object)

Ermöglicht Ihnen das Zertifikat festzulegen, das Sie zum Darstellen des Clients verwenden, indem Sie Abfrageparameter wie die folgenden verwenden: storeLocation, storeName, findType und findValue.Allows you to specify the certificate to use to represent the client by specifying query parameters such as storeLocation, storeName, findType and findValue.

public:
 void SetCertificate(System::Security::Cryptography::X509Certificates::StoreLocation storeLocation, System::Security::Cryptography::X509Certificates::StoreName storeName, System::Security::Cryptography::X509Certificates::X509FindType findType, System::Object ^ findValue);
public void SetCertificate (System.Security.Cryptography.X509Certificates.StoreLocation storeLocation, System.Security.Cryptography.X509Certificates.StoreName storeName, System.Security.Cryptography.X509Certificates.X509FindType findType, object findValue);
member this.SetCertificate : System.Security.Cryptography.X509Certificates.StoreLocation * System.Security.Cryptography.X509Certificates.StoreName * System.Security.Cryptography.X509Certificates.X509FindType * obj -> unit

Parameter

storeLocation
StoreLocation StoreLocation StoreLocation

Der Speicherort des Zertifikatspeichers, den der Client verwendet, um das Clientzertifikat zu erhalten.The location of the certificate store the client uses to obtain the client certificate.

storeName
StoreName StoreName StoreName

Gibt den Namen des X.509-Zertifikatsspeichers an, der geöffnet werden soll.Specifies the name of the X.509 certificate store to open.

findType
X509FindType X509FindType X509FindType

Definiert den Typ der X.509-Suche, die ausgeführt werden soll.Defines the type of X.509 search to be executed.

findValue
Object Object Object

Der Wert, nach dem im X.509-Zertifikatspeicher gesucht werden soll.The value to search for in the X.509 certificate store.

Beispiele

Im folgenden Codebeispiel wird das zu verwendende Zertifikat angegeben.The following code specifies the certificate to use.

// Create a WSHttpBinding and set its security properties. The
// security mode is Message, and the client is authenticated with 
// a certificate.
EndpointAddress ea = new EndpointAddress("http://contoso.com/");
WSHttpBinding b = new WSHttpBinding();
b.Security.Mode = SecurityMode.Message;
b.Security.Message.ClientCredentialType =
    MessageCredentialType.Certificate;

// Create the client with the binding and EndpointAddress.
CalculatorClient cc = new CalculatorClient(b, ea);

// Set the client credential value to a valid certificate.
cc.ClientCredentials.ClientCertificate.SetCertificate(
    StoreLocation.CurrentUser,
    StoreName.TrustedPeople,
    X509FindType.FindBySubjectName,
    "client.com");
' Create a WSHttpBinding and set its security properties. The
' security mode is Message, and the client is authenticated with 
' a certificate.
Dim ea As New EndpointAddress("http://contoso.com/")
Dim b As New WSHttpBinding()
b.Security.Mode = SecurityMode.Message
b.Security.Message.ClientCredentialType = MessageCredentialType.Certificate

' Create the client with the binding and EndpointAddress.
Dim cc As New CalculatorClient(b, ea)

' Set the client credential value to a valid certificate.
cc.ClientCredentials.ClientCertificate.SetCertificate( _
   StoreLocation.CurrentUser, _
   StoreName.TrustedPeople, _
   X509FindType.FindBySubjectName, _
   "client.com")

Hinweise

Werte für storeLocation sind in der StoreLocation-Enumeration enthalten:Values for storeLocation are included in the StoreLocation enumeration:

  • LocalMachine: Der dem lokalen Computer zugewiesene Zertifikatsspeicher (Standardeinstellung).LocalMachine: the certificate store assigned to the local machine (default).

  • CurrentUser: Der vom aktuellen Benutzer verwendete Zertifikatsspeicher.CurrentUser: the certificate store used by the current user.

Wenn die Clientanwendung über ein Systemkonto ausgeführt wird, befindet sich das Zertifikat in der Regel in LocalMachine.If the client application is running under a system account, then the certificate is typically in LocalMachine. Wenn die Clientanwendung über ein Benutzerkonto ausgeführt wird, befindet sich das Zertifikat in der Regel in CurrentUser.If the client application is running under a user account, then the certificate is typically in CurrentUser.

Werte für storeName sind in der StoreName-Enumeration enthalten.Values for storeName are included in the StoreName enumeration.

Werte für findType sind in der X509FindType-Enumeration enthalten.Values for findType are included in the X509FindType enumeration.

Die am häufigsten verwendete Enumeration ist FindBySubjectName, die eine Suche in den Betreffnamen der Zertifikate im angegebenen Speicher durchführt, wobei zwischen Groß- und Kleinschreibung unterschieden wird.The most commonly used enumeration is FindBySubjectName, which does a case-insensitive search on the subject name of certificates in the specified store. Dies kann eine ungenaue Suche sein.This can be an imprecise search. Wenn mehr als ein Zertifikat zurückgegeben wird, wird das erste mit der Suche übereinstimmende Zertifikat für die Darstellung des Clients verwendet.If more than one certificate is returned then the first one matching the find is used to represent the client.

Gilt für: