Sdílet prostřednictvím


<certificate> of <clientCertificate> Element

Určuje certifikát X.509 používaný k podepisování a šifrování zpráv.

<Konfigurace>
  <System.servicemodel>
    <Chování>
      <serviceBehaviors>
        <Chování>
          <přihlašovací údaje služby>
            <clientCertificate>
              <Certifikát>

Syntax

<certificate findValue="String"
             storeLocation = "CurrentUser/LocalMachine"
             storeName="AddressBook/AuthRoot/CertificateAuthority/Disallowed/My/Root/TrustedPeople/TrustedPublisher"
             X509FindType="FindByThumbPrint/FindBySubjectName/FindBySubjectDistinguishedName/FindByIssuerName/FindByIssuerDistinguishedName/FindBySerialNumber/FindByTimeValid/FindByTimeNotYetValid/FindByTemplateName/FindByApplicationPolicy/FindByCertificatePolicy/FindByExtension/FindByKeyUsage/FindBySubjectKeyIdentifier" />

Atributy a elementy

Následující části popisují atributy, podřízené a nadřazené elementy.

Atributy

Atribut Popis
findValue Řetězec obsahující hodnotu, která se má vyhledat v úložišti certifikátů X.509. Typ obsažený v atributu musí splňovat požadavky zadané X509FindType. Výchozí hodnota je prázdný řetězec.
storeLocation Určuje umístění úložiště certifikátů X.509, které klient používá k ověření certifikátu serveru. Mezi platné hodnoty patří:

– LocalMachine: Úložiště certifikátů přiřazené k místnímu počítači.
– CurrentUser: Úložiště certifikátů přiřazené aktuálnímu uživateli.

Výchozí hodnota je LocalMachine.
storeName Určuje název úložiště certifikátů X.509, které se má otevřít. Mezi platné hodnoty patří:

- AddressBook: Úložiště certifikátů pro ostatní uživatele.
– AuthRoot: Úložiště certifikátů pro externí certifikační autority (CA).
– CertificationAuthority: Úložiště certifikátů pro zprostředkující certifikační autority (CA).
- Zakázáno: Úložiště certifikátů pro odvolané certifikáty.
- My: Úložiště certifikátů pro osobní certifikáty.
- Root: Úložiště certifikátů pro důvěryhodné kořenové certifikační autority (CA).
– TrustedPeople: Úložiště certifikátů pro přímo důvěryhodné osoby a prostředky.
– TrustedPublisher: Úložiště certifikátů pro přímo důvěryhodné vydavatele.

Výchozí hodnota je Moje.
X509FindType Definuje typ vyhledávání X.509, který má být proveden. Mezi platné hodnoty patří:

– FindByThumbPrint
– FindBySubjectName
– FindBySubjectDistinguishedName
– FindByIssuerName
– FindByIssuerDistinguishedName
– FindBySerialNumber
- FindByTimeValid
– FindByTimeNotYetValid
– FindByTemplateName
– FindByApplicationPolicy
– FindByCertificatePolicy
– FindByExtension
– FindByKeyUsage
– FindBySubjectKeyIdentifier

Typ obsažený v atributu findValue musí splňovat požadavky zadané X509FindType.

Výchozí hodnota je FindBySubjectDistinguishedName.

Podřízené elementy

Žádné

Nadřazené elementy

Element Popis
<clientCertificate>

Poznámky

Element se <certificate> používá, když služba musí mít předem certifikát klienta, aby bylo možné bezpečně komunikovat s klientem. K tomu dochází při použití vzoru duplexní komunikace. V případě obvyklejšího vzoru požadavek/odpověď klient zahrne do požadavku svůj certifikát, který služba používá k šifrování a podepsání odpovědi zpět klientovi. Ve vzoru duplexní komunikace však služba nemá požadavek od klienta, a proto potřebuje certifikát klienta předem k zabezpečení zprávy pro klienta. Proto musíte získat certifikát klienta v rámci vzdáleného vyjednávání a zadat certifikát pomocí tohoto prvku. Další informace o duplexní službě naleznete v tématu Postupy: Vytvoření duplexního kontraktu.

Příklad

Následující kód určuje, jak najít odpovídající certifikát X.509 a vlastní typ ověření v elementu <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>

Viz také