X509CertificateRecipientClientCredential.SetScopedCertificate Метод

Определение

Задает сертификат из хранилища и сохраняет его в коллекцию, индексируемую по URL-адресу, который задает область.

Перегрузки

SetScopedCertificate(String, StoreLocation, StoreName, Uri)

Задает сертификат по имени субъекта, расположению хранилища сертификатов и имени хранилища сертификатов и сохраняет его в коллекцию для URL-адреса, задающего область.

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

Задает сертификат по расположению хранилища сертификатов, имени хранилища сертификатов, типу поиска сертификатов X.509 и значению для поиска и сохраняет его в коллекцию для URL-адреса, задающего область.

SetScopedCertificate(String, StoreLocation, StoreName, Uri)

Задает сертификат по имени субъекта, расположению хранилища сертификатов и имени хранилища сертификатов и сохраняет его в коллекцию для URL-адреса, задающего область.

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)

Параметры

subjectName
String

Полное имя субъекта.

storeLocation
StoreLocation

Расположение хранилища сертификатов, из которого служба получает сертификат службы.

storeName
StoreName

Имя открываемого хранилища сертификатов X.509.

targetService
Uri

URL-адрес, задающий область.

Исключения

Параметр subjectName или targetService имеет значение null.

Предпринята попытка установки, когда учетные данные доступны только для чтения.

Примеры

В данном примере кода показано, как вызвать этот метод.

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"));
}

Комментарии

Значения для параметра storeLocation включены в перечисление StoreLocation.

  • LocalMachine: хранилище сертификатов, назначенное локальному компьютеру.

  • CurrentUser: хранилище сертификатов, используемое текущим пользователем (по умолчанию).

Если приложение выполняется под учетной записью системы, то сертификат обычно находится в LocalMachine. Если приложение выполняется под учетной записью пользователя, то сертификат обычно находится в CurrentUser.

Значения для параметра storeName включены в перечисление StoreName.

Применяется к

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

Задает сертификат по расположению хранилища сертификатов, имени хранилища сертификатов, типу поиска сертификатов X.509 и значению для поиска и сохраняет его в коллекцию для URL-адреса, задающего область.

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)

Параметры

storeLocation
StoreLocation

Расположение хранилища сертификатов, из которого служба получает сертификат службы.

storeName
StoreName

Имя открываемого хранилища сертификатов X.509.

findType
X509FindType

Тип поиска сертификата X.509.

findValue
Object

Значение для поиска в хранилище сертификатов X.509.

targetService
Uri

URL-адрес, задающий область.

Исключения

Параметр findValue или targetService имеет значение null.

Предпринята попытка установки, когда учетные данные доступны только для чтения.

Примеры

В данном примере кода показано, как вызвать этот метод.

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"))

Комментарии

Значения для параметра storeLocation включены в перечисление StoreLocation.

  • LocalMachine: хранилище сертификатов, назначенное локальному компьютеру.

  • CurrentUser: хранилище сертификатов, используемое текущим пользователем (по умолчанию).

Если приложение выполняется под учетной записью системы, то сертификат обычно находится в LocalMachine. Если приложение выполняется под учетной записью пользователя, то сертификат обычно находится в CurrentUser.

Значения для параметра storeName включены в перечисление StoreName.

Значения для параметра findType включены в перечисление X509FindType.

Наиболее часто используется перечисление FindBySubjectName, которое выполняет поиск с учетом регистра по имени субъекта сертификатов в указанном хранилище. Это может быть неточный поиск. Если сертификаты не найдены либо найдено несколько сертификатов, удовлетворяющих условиям поиска, вызывается исключение InvalidOperationException.

Применяется к