6.5.2. X.509 クライアント証明書のユーザー認証の有効化
ここでは、JBoss EAP/Undertow および Red Hat Single Sign-On Server を設定して、X.509 クライアント証明書認証を有効にする方法を説明します。
- JBoss EAP での相互 SSL の有効化
JBoss EAP で SSL を有効にする方法については、「SSL の有効化」を参照してください。
- RHSSO_HOME/standalone/configuration/standalone.xml を開き、新しいレルムを追加します。
<security-realms> <security-realm name="ssl-realm"> <server-identities> <ssl> <keystore path="servercert.jks" relative-to="jboss.server.config.dir" keystore-password="servercert password"/> </ssl> </server-identities> <authentication> <truststore path="truststore.jks" relative-to="jboss.server.config.dir" keystore-password="truststore password"/> </authentication> </security-realm> </security-realms>
ssl/keystore
-
ssl
要素には、JKS キーストアからサーバーの公開鍵ペアを読み込む方法を定義するkeystore
要素が含まれます。 ssl/keystore/path
- JKS キーストアへのパス
ssl/keystore/relative-to
- キーストアパスを起点としたパスを定義します
ssl/keystore/keystore-password
- キーストアを開くためのパスワード
ssl/keystore/alias
(オプション)- キーストアのエントリーのエイリアス。キーストアに複数のエントリーが含まれる場合にこれを設定します。
ssl/keystore/key-password
(オプション)- 秘密のキーパスワード (キーストアパスワードと異なる場合)。
authentication/truststore
- トラストストアをロードして、インバウンド/ルーティング接続のリモート側に表示される証明書を検証する方法を定義します。通常、トラストストアには信頼される CA 証明書の集合が含まれます。
authentication/truststore/path
- 信頼される CA (認証局) の証明書を含む JKS キーストアへのパス
authentication/truststore/relative-to
- トラストストアパスが相対するパスを定義します
authentication/truststore/keystore-password
- トラストストアを開くパスワード
- https リスナーの有効化
WildFly で HTTPS を有効にする方法については、「HTTPS リスナー」を参照してください。
- 以下のように <https-listener> 要素を追加します。
<subsystem xmlns="urn:jboss:domain:undertow:10.0"> .... <server name="default-server"> <https-listener name="default" socket-binding="https" security-realm="ssl-realm" verify-client="REQUESTED"/> </server> </subsystem>
https-listener/security-realm
- 値は、前のセクションのレルムの名前に一致する必要があります。
https-listener/verify-client
-
REQUESTED
に設定した場合、サーバーは必要に応じてクライアント証明書を要求します。属性をREQUIRED
に設定すると、クライアント証明書が提供されない場合、サーバーが受信接続を拒否します。