<clientCertificate> 要素の <certificate>
メッセージの署名と暗号化に使用される X.509 証明書を指定します。
スキーマの階層
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<serviceBehaviors> の <behavior>
<serviceCredentials>
<serviceCredentials> の <clientCertificate>
<clientCertificate> 要素の <certificate>
構文
<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"
/>
属性と要素
ここでは、属性、子要素、および親要素について説明します。
属性
属性 | 説明 |
---|---|
findValue |
X.509 証明書ストアで検索する値を含む文字列。属性に含まれている型は、指定された X509FindType の要件を満たしている必要があります。既定値は空の文字列です。 |
storeLocation |
クライアントがサーバーの証明書の検証に使用する X.509 証明書ストアの場所を指定します。有効な値は次のとおりです。
既定は LocalMachine です。 |
storeName |
開く X.509 証明書ストアの名前を指定します。有効な値は次のとおりです。
既定は My です。 |
X509FindType |
実行する X.509 検索の種類を定義します。有効な値は次のとおりです。
findValue 属性に含まれている型は、指定された X509FindType の要件を満たしている必要があります。 既定値は FindBySubjectDistinguishedName です。 |
子要素
なし。
親要素
要素 | 説明 |
---|---|
解説
<certificate> 要素は、サービスがクライアントと安全に通信するために、サービスが前もってクライアントの証明書を持っている必要がある場合に使用します。このような状況は、双方向通信パターンを使用する場合に生じます。より一般的な要求/応答パターンでは、クライアントは自身の証明書を要求に含め、サービスはそれを使用してクライアントへの応答を暗号化し、署名します。一方、双方向通信パターンでは、サービスにはクライアントからの要求が来ないので、クライアントの証明書をあらかじめ取得することで、クライアント宛のメッセージのセキュリティを保護する必要があります。このため、クライアントの証明書を帯域外のネゴシエーションで取得し、この要素を使用して証明書を指定する必要があります。双方向サービスの詳細については、「How to: Create a Duplex Contract」を参照してください。
例
次のコードは、<authentication> 要素の適切な X.509 証明書とカスタム検証タイプの検索方法を指定します。
<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>
参照
リファレンス
Certificate
Certificate
X509ClientCertificateCredentialsElement
その他のリソース
Security Behaviors in WCF
How To: Create a Service Employing a Custom Certificate Validator
Working with Certificates