Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Określa zachowania uwierzytelniania dla certyfikatów klienta używanych przez usługę.
<configuration>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<serviceCredentials>
<clientCertificate>
<authentication>
Składnia
<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" />
Atrybuty i elementy
W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne
Attributes
| Attribute | Description |
|---|---|
| customCertificateValidatorType | Ciąg opcjonalny. Typ i zestaw używany do sprawdzania poprawności typu niestandardowego. Ten atrybut należy ustawić, gdy certificateValidationMode jest ustawiony na Customwartość . |
| Certificatevalidationmode | Opcjonalne wyliczenie. Określa jeden z trybów używanych do weryfikowania poświadczeń. Ten atrybut jest typu X509CertificateValidationMode . Jeśli ustawiono wartość X509CertificateValidationMode.Custom, należy również podać element customCertificateValidator . Wartość domyślna to X509CertificateValidationMode.ChainTrust. |
| Includewindowsgroups | Opcjonalna wartość logiczna. Określa, czy grupy systemu Windows są uwzględnione w kontekście zabezpieczeń. Ustawienie tego atrybutu true na wartość ma wpływ na wydajność, ponieważ powoduje rozszerzenie pełnej grupy. Ustaw ten atrybut na false wartość , jeśli nie musisz ustanawiać listy grup, do których należy użytkownik. |
| mapClientCertificateToWindowsAccount | Wartość logiczna. Określa, czy klient może być mapowany na tożsamość systemu Windows przy użyciu certyfikatu. Aby to zrobić, należy włączyć usługę Active Directory. |
| revocationMode | Opcjonalne wyliczenie. Jeden z trybów używanych do sprawdzania listy odwołanych certyfikatów (RCL). Wartość domyślna to Online. Ta wartość jest ignorowana podczas korzystania z zabezpieczeń transportu HTTP. |
| trustedStoreLocation | Opcjonalne wyliczenie. Jedna z dwóch lokalizacji magazynu systemu: LocalMachine lub CurrentUser. Ta wartość jest używana, gdy certyfikat usługi jest negocjowany dla klienta. Walidacja jest wykonywana względem magazynu Zaufane osoby w określonej lokalizacji magazynu. Wartość domyślna to CurrentUser. |
customCertificateValidatorType, atrybut
| Wartość | Description |
|---|---|
| Sznurek | Określa nazwę typu i zestaw oraz inne dane używane do znalezienia typu. |
certificateValidationMode, atrybut
| Wartość | Description |
|---|---|
| Wyliczenie | Jedna z następujących wartości: None, PeerTrust, ChainTrust, PeerOrChainTrust, Custom. Aby uzyskać więcej informacji, zobacz Praca z certyfikatami. |
revocationMode, atrybut
| Wartość | Description |
|---|---|
| Wyliczenie | Jedna z następujących wartości: NoCheck, Online, Offline. Aby uzyskać więcej informacji, zobacz Praca z certyfikatami. |
trustedStoreLocation, atrybut
| Wartość | Description |
|---|---|
| Wyliczenie | Jedna z następujących wartości: LocalMachine lub CurrentUser. Wartość domyślna to CurrentUser. Jeśli aplikacja kliencka jest uruchomiona na koncie systemowym, certyfikat jest zwykle w obszarze LocalMachine. Jeśli aplikacja kliencka jest uruchomiona na koncie użytkownika, certyfikat jest zwykle w programie CurrentUser. |
Elementy podrzędne
Żaden.
Elementy nadrzędne
| Składnik | Description |
|---|---|
| <certyfikat klienta> | Definiuje certyfikat X.509 używany do uwierzytelniania klienta w usłudze. |
Uwagi
Element <authentication> odpowiada X509ClientCertificateAuthentication klasie . Umożliwia dostosowanie sposobu uwierzytelniania klientów. Atrybut można ustawić certificateValidationMode na None, , ChainTrustPeerOrChainTrust, PeerTrust, lub Custom. Domyślnie poziom jest ustawiony na ChainTrust, który określa, że każdy certyfikat musi znajdować się w hierarchii certyfikatów kończących się urzędem głównym w górnej części łańcucha. Jest to najbardziej bezpieczny tryb. Można również ustawić wartość na PeerOrChainTrust, która określa, że certyfikaty wystawione samodzielnie (zaufanie równorzędne) są akceptowane, a także certyfikaty, które znajdują się w zaufanym łańcuchu. Ta wartość jest używana podczas opracowywania i debugowania klientów i usług, ponieważ certyfikaty wystawione samodzielnie nie muszą być kupowane z zaufanego urzędu. Podczas wdrażania klienta użyj ChainTrust wartości .
Możesz również ustawić wartość na Custom. W przypadku ustawienia wartości należy również ustawić CustomcustomCertificateValidatorType atrybut na zestaw i typ używany do weryfikacji certyfikatu. Aby utworzyć własny niestandardowy moduł sprawdzania poprawności, należy dziedziczyć z klasy abstrakcyjnej X509CertificateValidator . Aby uzyskać więcej informacji, zobacz How to: Create a Service that Employs a Custom Certificate Validator (Jak utworzyć usługę, która korzysta z niestandardowego modułu sprawdzania poprawności certyfikatów).
Example
Poniższy kod określa certyfikat X.509 i niestandardowy typ weryfikacji w elemecie <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>