Dela via


<autentisering> av <clientCertificate-element>

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 customCertificateValidator också 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 true har en prestandapåverkan, eftersom det resulterar i en fullständig gruppexpansion. Ange det här attributet till false om 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: LocalMachine eller CurrentUser. 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 är CurrentUser.

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: LocalMachine eller CurrentUser. Standardvärdet är CurrentUser. Om klientprogrammet körs under ett systemkonto är certifikatet vanligtvis under LocalMachine. Om klientprogrammet körs under ett användarkonto finns certifikatet vanligtvis i CurrentUser.

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>

Se även