X509CertificateInitiatorClientCredential.SetCertificate Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Especifica o certificado a usar para representar o serviço.
Sobrecargas
| Name | Description |
|---|---|
| SetCertificate(String, StoreLocation, StoreName) |
Permite especificar o certificado a usar para representar o serviço, especificando o nome distinto em questão. |
| SetCertificate(StoreLocation, StoreName, X509FindType, Object) |
Permite especificar o certificado a usar para representar o cliente, especificando parâmetros de consulta como |
SetCertificate(String, StoreLocation, StoreName)
Permite especificar o certificado a usar para representar o serviço, especificando o nome distinto em questão.
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
Public Sub SetCertificate (subjectName As String, storeLocation As StoreLocation, storeName As StoreName)
Parâmetros
- subjectName
- String
Sujeito nome distinto.
- storeLocation
- StoreLocation
A localização do armazenamento de certificados que o serviço utiliza para obter o certificado de serviço.
- storeName
- StoreName
Especifica o nome da loja de certificados X.509 a abrir.
Exemplos
O código seguinte especifica o certificado a utilizar.
// 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);
Observações
Para mais informações sobre o subjectName parâmetro, veja SubjectName.
Os valores para storeLocation são incluídos na StoreLocation enumeração:
LocalMachine: o armazenamento de certificados atribuído à máquina local (por defeito).
CurrentUser: o armazenamento de certificados utilizado pelo utilizador atual.
Se a aplicação cliente estiver a correr sob uma conta do sistema, então o certificado está tipicamente em LocalMachine. Se a aplicação cliente estiver a correr sob uma conta de utilizador, então o certificado está normalmente em CurrentUser.
Os valores para storeName são incluídos na StoreName enumeração.
Aplica-se a
SetCertificate(StoreLocation, StoreName, X509FindType, Object)
Permite especificar o certificado a usar para representar o cliente, especificando parâmetros de consulta como storeLocation, storeName, findType e 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
Public Sub SetCertificate (storeLocation As StoreLocation, storeName As StoreName, findType As X509FindType, findValue As Object)
Parâmetros
- storeLocation
- StoreLocation
A localização do armazenamento de certificados que o cliente utiliza para obter o certificado do cliente.
- storeName
- StoreName
Especifica o nome da loja de certificados X.509 a abrir.
- findType
- X509FindType
Define o tipo de pesquisa X.509 a ser executada.
- findValue
- Object
O valor a procurar na loja de certificados X.509.
Exemplos
O código seguinte especifica o certificado a utilizar.
// 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")
Observações
Os valores para storeLocation são incluídos na StoreLocation enumeração:
LocalMachine: o armazenamento de certificados atribuído à máquina local (por defeito).
CurrentUser: o armazenamento de certificados utilizado pelo utilizador atual.
Se a aplicação cliente estiver a correr sob uma conta do sistema, então o certificado está tipicamente em LocalMachine. Se a aplicação cliente estiver a correr sob uma conta de utilizador, então o certificado está normalmente em CurrentUser.
Os valores para storeName são incluídos na StoreName enumeração.
Os valores para findType são incluídos na X509FindType enumeração.
A enumeração mais utilizada é FindBySubjectName, que faz uma pesquisa insensível a maiúsculas minúsculas no nome do assunto dos certificados no armazenamento especificado. Esta pode ser uma pesquisa imprecisa. Se mais do que um certificado for devolvido, o primeiro que corresponde à descoberta é usado para representar o cliente.