Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Anger autentiseringsbeteenden för klientcertifikat som används av en tjänst.
              
              
              <Konfiguration>
  
              
              
              <system.serviceModel>
    
              
              
              <Beteenden>
      
              
              
              <serviceBehaviors>
        
              
              
              <Beteende>
          
              
              
              <serviceCredentials>
            
              
              
              <clientCertificate>
              
              
              <Autentisering>
Syntax
<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" />
Attribut och element
I följande avsnitt beskrivs attribut, underordnade element och överordnade element
Attribut
| Attribut | Beskrivning | 
|---|---|
| customCertificateValidatorType | Valfri sträng. En typ och sammansättning som används för att verifiera en anpassad typ. Det här attributet måste anges när certificateValidationModeär inställt påCustom. | 
| certificateValidationMode | Valfri uppräkning. Anger ett av de lägen som används för att verifiera autentiseringsuppgifter. Det här attributet är av typen X509CertificateValidationMode . Om värdet är X509CertificateValidationMode.Custommåste ett customCertificateValidatorockså anges. Standardvärdet är X509CertificateValidationMode.ChainTrust. | 
| includeWindowsGroups | Valfritt booleskt värde. Anger om Windows-grupper ingår i säkerhetskontexten. Att ange det här attributet till truehar en prestandapåverkan, eftersom det resulterar i en fullständig gruppexpansion. Ange det här attributet tillfalseom du inte behöver upprätta listan över grupper som en användare tillhör. | 
| mapClientCertificateToWindowsAccount | Boolean. Anger om klienten kan mappas till en Windows-identitet med hjälp av certifikatet. Active Directory måste vara aktiverat för att göra detta. | 
| revocationMode | Valfri uppräkning. Ett av de lägen som används för att söka efter en återkallad certifikatlista (RCL). Standardvärdet är Online. Det här värdet ignoreras när du använder HTTP-transportsäkerhet. | 
| trustedStoreLocation | Valfri uppräkning. En av de två systemlagringsplatserna: LocalMachineellerCurrentUser. Det här värdet används när ett tjänstcertifikat förhandlas till klienten. Verifieringen utförs mot det betrodda Personer arkivet på den angivna lagringsplatsen. Standardvärdet ärCurrentUser. | 
customCertificateValidatorType-attribut
| Värde | Beskrivning | 
|---|---|
| Sträng | Anger typnamnet och sammansättningen och andra data som används för att hitta typen. | 
certificateValidationMode-attribut
| Värde | Beskrivning | 
|---|---|
| Uppräkning | Ett av följande värden: None, PeerTrust, ChainTrust, PeerOrChainTrust, Custom. Mer information finns i Arbeta med certifikat. | 
revocationMode-attribut
| Värde | Beskrivning | 
|---|---|
| Uppräkning | Ett av följande värden: NoCheck, Online, Offline. Mer information finns i Arbeta med certifikat. | 
trustedStoreLocation-attribut
| Värde | Beskrivning | 
|---|---|
| Uppräkning | Något av följande värden: LocalMachineellerCurrentUser. Standardvärdet ärCurrentUser. Om klientprogrammet körs under ett systemkonto är certifikatet vanligtvis underLocalMachine. Om klientprogrammet körs under ett användarkonto finns certifikatet vanligtvis iCurrentUser. | 
Underordnade element
Inga.
Överordnade element
| Element | Beskrivning | 
|---|---|
| <clientCertificate> | Definierar ett X.509-certifikat som används för att autentisera en klient till en tjänst. | 
Kommentarer
Elementet <authentication> motsvarar X509ClientCertificateAuthentication klassen . Det gör att du kan anpassa hur klienter autentiseras. Du kan ange certificateValidationMode attributet till None, ChainTrust, PeerOrChainTrust, PeerTrusteller Custom. Som standard är nivån inställd ChainTrustpå , vilket anger att varje certifikat måste hittas i en hierarki med certifikat som slutar på en rotutfärdare överst i kedjan. Det här är det säkraste läget. Du kan också ange värdet till PeerOrChainTrust, som anger att självutfärdade certifikat (peer-förtroende) accepteras samt certifikat som finns i en betrodd kedja. Det här värdet används när du utvecklar och felsöker klienter och tjänster eftersom självutfärdade certifikat inte behöver köpas från en betrodd utfärdare. När du distribuerar en klient använder du ChainTrust värdet i stället.
Du kan också ange värdet till Custom. När värdet Custom anges måste du också ange customCertificateValidatorType attributet till en sammansättning och typ som används för att verifiera certifikatet. Om du vill skapa en egen anpassad verifierare måste du ärva från den abstrakta X509CertificateValidator klassen. Mer information finns i How to: Create a Service that Employs a Custom Certificate Validator (Så här skapar du en tjänst som använder en anpassad certifikatverifierare).
Exempel
Följande kod anger ett X.509-certifikat och en anpassad valideringstyp i -elementet <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>