X509CertificateRecipientClientCredential.SetScopedCertificate Método

Definição

Define um certificado de uma loja e armazena-o numa coleção indexada pela URL que define o âmbito.

Sobrecargas

Name Description
SetScopedCertificate(String, StoreLocation, StoreName, Uri)

Define um certificado pelo nome do assunto, localização do armazenamento de certificados e nome do armazenamento de certificados, e armazena-o numa coleção a ser usada para o URL que define o escopo.

SetScopedCertificate(StoreLocation, StoreName, X509FindType, Object, Uri)

Define um certificado pela localização do armazenamento de certificados, nome do armazenamento de certificados, tipo de pesquisa X.509 e valor a procurar, e armazena-o numa coleção a ser usada para o URL que define o âmbito.

SetScopedCertificate(String, StoreLocation, StoreName, Uri)

Origem:
X509CertificateRecipientClientCredential.cs
Origem:
X509CertificateRecipientClientCredential.cs
Origem:
X509CertificateRecipientClientCredential.cs

Define um certificado pelo nome do assunto, localização do armazenamento de certificados e nome do armazenamento de certificados, e armazena-o numa coleção a ser usada para o URL que define o escopo.

public:
 void SetScopedCertificate(System::String ^ subjectName, System::Security::Cryptography::X509Certificates::StoreLocation storeLocation, System::Security::Cryptography::X509Certificates::StoreName storeName, Uri ^ targetService);
public void SetScopedCertificate(string subjectName, System.Security.Cryptography.X509Certificates.StoreLocation storeLocation, System.Security.Cryptography.X509Certificates.StoreName storeName, Uri targetService);
member this.SetScopedCertificate : string * System.Security.Cryptography.X509Certificates.StoreLocation * System.Security.Cryptography.X509Certificates.StoreName * Uri -> unit
Public Sub SetScopedCertificate (subjectName As String, storeLocation As StoreLocation, storeName As StoreName, targetService As Uri)

Parâmetros

subjectName
String

O nome do assunto totalmente qualificado.

storeLocation
StoreLocation

A localização do armazenamento de certificados que o serviço utiliza para obter o certificado de serviço.

storeName
StoreName

O nome da loja de certificados X.509 a abrir.

targetService
Uri

O URL que define o âmbito.

Exceções

subjectName ou targetService é null.

Tentei definir quando a credencial é apenas leitura.

Exemplos

Este código mostra como chamar este método.

public void snippet25(CalculatorClient cc)
{
    X509CertificateRecipientClientCredential rcc = cc.ClientCredentials.ServiceCertificate;
    rcc.SetScopedCertificate("http://fabrikam.com/sts",
                             StoreLocation.CurrentUser,
                             StoreName.TrustedPeople,
                             new Uri("http://fabrikam.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.

  • CurrentUser: o armazenamento de certificados usado pelo utilizador atual (por defeito).

Se a aplicação estiver a correr sob uma conta do sistema, então o certificado está normalmente em LocalMachine. Se a aplicação estiver a correr sob uma conta de utilizador, então o certificado está tipicamente em CurrentUser.

Os valores para storeName são incluídos na StoreName enumeração.

Aplica-se a

SetScopedCertificate(StoreLocation, StoreName, X509FindType, Object, Uri)

Origem:
X509CertificateRecipientClientCredential.cs
Origem:
X509CertificateRecipientClientCredential.cs
Origem:
X509CertificateRecipientClientCredential.cs

Define um certificado pela localização do armazenamento de certificados, nome do armazenamento de certificados, tipo de pesquisa X.509 e valor a procurar, e armazena-o numa coleção a ser usada para o URL que define o âmbito.

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

Parâmetros

storeLocation
StoreLocation

A localização do armazenamento de certificados que o serviço utiliza para obter o certificado de serviço.

storeName
StoreName

O nome da loja de certificados X.509 a abrir.

findType
X509FindType

O tipo de pesquisa X.509 a ser executada.

findValue
Object

O valor a procurar na loja de certificados X.509.

targetService
Uri

O URL que define o âmbito.

Exceções

findValue ou targetService é null.

Tentei definir quando a credencial é apenas leitura.

Exemplos

Este código mostra como chamar este método.

public void snippet20(CalculatorClient client)
{
    X509CertificateRecipientClientCredential rcc = client.ClientCredentials.ServiceCertificate;
    rcc.SetScopedCertificate(StoreLocation.CurrentUser,
                             StoreName.TrustedPeople,
                             X509FindType.FindBySubjectName,
                             "FabrikamSTS",
                             new Uri("http://fabrikam.com/sts"));
}
rcc.SetScopedCertificate(StoreLocation.CurrentUser, _
            StoreName.TrustedPeople, _
            X509FindType.FindBySubjectName, _
            "FabrikamSTS", _
            New Uri("http://fabrikam.com/sts"))

Observações

Os valores para storeLocation são incluídos na StoreLocation enumeração:

  • LocalMachine: o armazenamento de certificados atribuído à máquina local.

  • CurrentUser: o armazenamento de certificados usado pelo utilizador atual (por defeito).

Se a aplicação estiver a correr sob uma conta do sistema, então o certificado está normalmente em LocalMachine. Se a aplicação estiver a correr sob uma conta de utilizador, então o certificado está tipicamente 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 não forem encontrados certificados ou múltiplos certificados que correspondam aos critérios, será lançado um InvalidOperationException lançamento.

Aplica-se a