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.