Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Указывает поведение проверки подлинности для сертификатов клиента, используемых службой.
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceCredentials>
<clientCertificate>
<authentication>
Синтаксис
<authentication customCertificateValidatorType="namespace.typeName, [,AssemblyName] [,Version=version number] [,Culture=culture] [,PublicKeyToken=token]"
certificateValidationMode="ChainTrust/None/PeerTrust/PeerOrChainTrust/Custom"
includeWindowsGroups="Boolean"
mapClientCertificateToWindowsAccount="Boolean"
revocationMode="NoCheck/Online/Offline"
trustedStoreLocation="CurrentUser/LocalMachine" />
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние элементы и родительские элементы
Attributes
| Свойство | Description |
|---|---|
| customCertificateValidatorType | Необязательная строка. Тип и сборка, используемые для проверки пользовательского типа. Этот атрибут должен быть задан, если certificateValidationMode задано значение Custom. |
| certificateValidationMode | Необязательное перечисление. Указывает один из режимов, используемых для проверки учетных данных. Этот атрибут имеет X509CertificateValidationMode тип. Если задано значение X509CertificateValidationMode.Custom, необходимо также указать объект customCertificateValidator . Значение по умолчанию — X509CertificateValidationMode.ChainTrust. |
| includeWindowsGroups | Необязательное логическое значение. Указывает, включены ли группы Windows в контекст безопасности. Установка этого атрибута true на производительность, так как она приводит к полному расширению группы. Задайте для этого атрибута значение false , если вам не нужно устанавливать список групп, к которому принадлежит пользователь. |
| mapClientCertificateToWindowsAccount | Логическое значение. Указывает, можно ли сопоставить клиента с удостоверением Windows с помощью сертификата. Для этого необходимо включить Active Directory. |
| revocationMode | Необязательное перечисление. Один из режимов, используемых для проверки отзыва списков сертификатов (RCL). Значение по умолчанию — Online. Это значение игнорируется при использовании безопасности транспорта HTTP. |
| TrustedStoreLocation | Необязательное перечисление. Одно из двух расположений системного хранилища: LocalMachine или CurrentUser. Это значение используется при согласовании сертификата службы с клиентом. Проверка выполняется в хранилище доверенных людей в указанном расположении хранилища. Значение по умолчанию — CurrentUser. |
Атрибут customCertificateValidatorType
| Ценность | Description |
|---|---|
| String | Указывает имя типа и сборку и другие данные, используемые для поиска типа. |
Атрибут certificateValidationMode
| Ценность | Description |
|---|---|
| Перечисление | Одно из следующих значений: None, PeerTrust, ChainTrust, PeerOrChainTrust, Custom. Дополнительные сведения см. в статье "Работа с сертификатами". |
Атрибут отзываMode
| Ценность | Description |
|---|---|
| Перечисление | Одно из следующих значений: NoCheck, Online, Offline. Дополнительные сведения см. в статье "Работа с сертификатами". |
Атрибут trustedStoreLocation
| Ценность | Description |
|---|---|
| Перечисление | Одно из следующих значений: LocalMachine или CurrentUser. Значение по умолчанию — CurrentUser. Если клиентское приложение выполняется под системной учетной записью, сертификат обычно находится в разделе LocalMachine. Если клиентское приложение выполняется под учетной записью пользователя, сертификат обычно находится в CurrentUser. |
Дочерние элементы
Нет.
Родительские элементы
| Элемент | Description |
|---|---|
| <клиентский сертификат> | Определяет сертификат X.509, используемый для проверки подлинности клиента в службе. |
Замечания
Элемент <authentication> соответствует классу X509ClientCertificateAuthentication . Он позволяет настроить способ проверки подлинности клиентов. Для атрибута certificateValidationMode можно задать значение None, ChainTrust, PeerOrChainTrust, PeerTrust или Custom. По умолчанию устанавливается уровень ChainTrust, указывающий, что каждый сертификат должен находиться в иерархии сертификатов, заканчивающихся корневым центром в верхней части цепочки. Это наиболее безопасный режим. Также можно установить значение PeerOrChainTrust, в этом случае будут приниматься как самостоятельно выдаваемые сертификаты (доверие одноранговой группы), так и сертификаты, которые находятся в цепи доверия. Данное значение используется при разработке и отладке клиентов и служб, так как самостоятельно выданные сертификаты не нужно приобретать у доверенного центра сертификации. При развертывании клиента вместо этого значения следует использовать значение ChainTrust.
Также можно установить значение Custom. При установке значения Custom необходимо также задать атрибут customCertificateValidatorType для сборки и тип, который используется при проверке сертификата. Для создания собственного пользовательского модуля проверки необходимо наследование от абстрактного класса X509CertificateValidator. Дополнительные сведения см. в разделе "Практическое руководство. Создание службы, которая использует настраиваемый проверяющий сертификат".
Example
Следующий код указывает сертификат X.509 и пользовательский тип проверки в элементе <authentication> .
<serviceBehaviors>
<behavior name="myServiceBehavior">
<clientCertificate>
<certificate findValue="www.cohowinery.com"
storeLocation="CurrentUser"
storeName="TrustedPeople"
x509FindType="FindByIssuerName" />
<authentication customCertificateValidatorType="MyTypes.Coho"
certificateValidationMode="Custom"
revocationMode="Offline"
includeWindowsGroups="false"
mapClientCertificateToWindowsAccount="true" />
</clientCertificate>
</behavior>
</serviceBehaviors>