1.5. 一方向と双方向 SSL/TLS をアプリケーションに設定


1.5.1. アプリケーション用の自己署名証明書の自動作成

レガシーセキュリティーレルムを使用している場合は、JBoss EAP では開発の目的で自己署名証明書が自動的に生成されます。

例: 自己署名証明書の作成を示すサーバー−ログ

15:26:09,031 WARN  [org.jboss.as.domain.management.security] (MSC service thread 1-7) WFLYDM0111: Keystore /path/to/jboss/standalone/configuration/application.keystore not found, it will be auto generated on first use with a self signed certificate for host localhost
...
15:26:10,076 WARN  [org.jboss.as.domain.management.security] (MSC service thread 1-2) WFLYDM0113: Generated self signed certificate at /path/to/jboss/configuration/application.keystore. Please note that self signed certificates are not secure, and should only be used for testing purposes. Do not use this self signed certificate in production.
SHA-1 fingerprint of the generated key is 00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee:ff:00:11:22:33
SHA-256 fingerprint of the generated key is 00:11:22:33:44:55:66:77:88:99:00:aa:bb:cc:dd:ee:ff:00:11:22:33:44:55:66:77:88:99:aa:bb:cc:dd:ee
...

この証明書はテスト目的で作成され、アプリケーションが使用する HTTPS インターフェイスに割り当てられます。ファイルが HTTPS インターフェイスの初回アクセス時に存在しない場合は、証明書を含むキーストアが生成されます。

例: 自己署名証明書を使用したデフォルトの ApplicationRealm

<security-realm name="ApplicationRealm">
  <server-identities>
    <ssl>
      <keystore path="application.keystore" relative-to="jboss.server.config.dir" keystore-password="password" alias="server" key-password="password" generate-self-signed-certificate-host="localhost"/>
    </ssl>
  </server-identities>
  ...
</security-realm>

例: HTTPS インターフェイスのデフォルト設定

<subsystem xmlns="urn:jboss:domain:undertow:10.0">
    ...
    <server name="default-server">
        ...
        <https-listener name="https" socket-binding="https" security-realm="ApplicationRealm" enable-http2="true"/>
        <host name="default-host" alias="localhost">
        ...

注記

自己署名証明書の作成を無効にする場合は、サーバーキーストア設定から generate-self-signed-certificate-host="localhost" を削除する必要があります。generate-self-signed-certificate-host 属性は、自己署名証明書を生成するホスト名を保持します。

警告

この自己署名証明書はテスト目的のみを目的とし、実稼働環境での使用を目的としていません。Elytron を使用したアプリケーションに SSL/TLS を設定する方法は、Elytron サブシステムを使用してアプリケーションに対して一方向 SSL/TLS を有効化する および Elytron サブシステムを使用してアプリケーションに対して双方向 SSL/TLS を有効化する セクションを参照してください。レガシーのセキュリティーを使用したアプリケーション向けに SSL/TLS を設定する方法は、レガシーセキュリティーレルムを使用してアプリケーションに対して一方向 SSL/TLS を有効化する および レガシーセキュリティーレルムを使用してアプリケーションに対して双方向 SSL/TLS を有効化する セクションを参照してください。

1.5.2. Elytron の使用

1.5.2.1. Elytron サブシステムを使用したアプリケーション用の一方向 SSL/TLS の有効化

JBoss EAP では、JBoss EAP 管理 CLI または管理コンソールを使用してデプロイされたアプリケーションの一方向 SSL/TLS を有効にできます。

管理 CLI では、一方向の SSL/TLS を以下の方法で有効にできます。

セキュリティーコマンドの使用

security enable-ssl-http-server コマンドを使用すると、デプロイされたアプリケーションに一方向 SSL/TLS を有効にできます。

例: ウィザードの使用

security enable-ssl-http-server --interactive

Please provide required pieces of information to enable SSL:
Key-store file name (default default-server.keystore): keystore.jks
Password (blank generated): secret
What is your first and last name? [Unknown]: localhost
What is the name of your organizational unit? [Unknown]:
What is the name of your organization? [Unknown]:
What is the name of your City or Locality? [Unknown]:
What is the name of your State or Province? [Unknown]:
What is the two-letter country code for this unit? [Unknown]:
Is CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown correct y/n [y]?
Validity (in days, blank default): 365
Alias (blank generated): localhost
Enable SSL Mutual Authentication y/n (blank n): n

SSL options:
key store file: keystore.jks
distinguished name: CN=localhost, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown
password: secret
validity: 365
alias: localhost
Server keystore file keystore.jks, certificate file keystore.pem and keystore.csr file
will be generated in server configuration directory.
Do you confirm y/n: y

注記

コマンドを実行すると、管理 CLI がサーバーをリロードします。

一方向 SSL/TLS がアプリケーション用に有効化されました。

Elytron サブシステムコマンドの使用

JBoss EAP では、undertow サブシステムとともに elytron サブシステムを使用すると、デプロイされたアプリケーションに一方向 SSL/TLS を有効にすることができます。

  1. JBoss EAP で key-store を設定します。

    /subsystem=elytron/key-store=httpsKS:add(path=/path/to/keystore.jks, credential-reference={clear-text=secret}, type=JKS)

    キーストアファイルが存在しない場合は、以下のコマンドを使用してサンプルキーペアを生成できます。

    /subsystem=elytron/key-store=httpsKS:generate-key-pair(alias=localhost,algorithm=RSA,key-size=1024,validity=365,credential-reference={clear-text=secret},distinguished-name="CN=localhost")
    
    /subsystem=elytron/key-store=httpsKS:store()
  2. key- store を参照する key-manager を設定します。

    /subsystem=elytron/key-manager=httpsKM:add(key-store=httpsKS,credential-reference={clear-text=secret})
    重要

    Elytron サブシステムはデフォルトで KeyManagerFactory.getDefaultAlgorithm() を使用してアルゴリズムを決定するため、Red Hat は前のコマンドでアルゴリズム属性を指定しませんでした。ただし、アルゴリズム属性は指定できます。アルゴリズム属性を指定するには、使用している JDK によるキーマネージャーアルゴリズムを知る必要があります。たとえば、SunJSSE を使用する JDK は、PKIX および SunX509 アルゴリズムを提供します。

    前のコマンドでは、SunX509 をキーマネージャーアルゴリズム属性として指定できます。

  3. key-manager を参照する server-ssl-context を設定します。

    /subsystem=elytron/server-ssl-context=httpsSSC:add(key-manager=httpsKM, protocols=["TLSv1.2"])
    重要

    利用できるようにする必要のある SSL/TLS プロトコルを決定する必要があります。上記のコマンド例は TLSv1.2 を使用します。cipher-suite-filter 引数を使用して、許可される暗号スイートを指定でき、use-cipher-suites-order 引用して、サーバーの暗号スイートの順序を許可します。use-cipher-suites-order 属性はデフォルトで true に設定されます。これは、レガシー security サブシステムの動作とは異なります。その動作は、デフォルトで、クライアント暗号スイートの順序を許可します。

    警告

    Red Hat では、影響するすべてのパッケージで TLSv1.1 または TLSv1.2 を利用するために SSLv2、SSLv3、および TLSv1.0 を明示的に無効化することを推奨しています。

  4. https-listener が SSL 設定でレガシーセキュリティーレルムを使用するように設定されているかどうかを確認します。

    /subsystem=undertow/server=default-server/https-listener=https:read-attribute(name=security-realm)
    {
        "outcome" => "success",
        "result" => "ApplicationRealm"
    }

    上記のコマンドは、https-listener が SSL 設定の ApplicationRealm レガシーセキュリティーレルムを使用するように設定されていることを示しています。undertow は、レガシーセキュリティーレルムと Elytron の ssl-context を同時に参照できないため、レガシーセキュリティーレルムへの参照を削除する必要があります。

    注記

    結果が undefined である場合は、次の手順でセキュリティーレルムへの参照を削除する必要はありません。

  5. レガシーセキュリティーレルムへの参照を削除し、https-listener を Elytron の ssl-context を使用するように更新します。

    注記

    https-listener には、常に security-realm または ssl-context が設定されている必要があります。2 つの設定間で変更する場合は、以下に示すように、コマンドを単一のバッチで実行する必要があります。

    batch
    /subsystem=undertow/server=default-server/https-listener=https:undefine-attribute(name=security-realm)
    /subsystem=undertow/server=default-server/https-listener=https:write-attribute(name=ssl-context, value=httpsSSC)
    run-batch
  6. サーバーをリロードします。

    reload

    一方向 SSL/TLS がアプリケーション用に有効化されました。

注記

disable-ssl-http-server コマンドを使用すると、デプロイされたアプリケーションの一方向 SSL/TLS を無効にできます。

security disable-ssl-http-server

このコマンドでは、Elytron リソースは削除されません。SSL 設定に ApplicationRealm レガシーセキュリティーレルムを使用するようにシステムを設定します。

管理コンソールの使用

管理コンソールで SSL ウィザードを使用すると、undertow サブシステムを設定することでアプリケーションに SSL を有効にできます。

ウィザードにアクセスするには、以下の手順に従います。

  1. 管理コンソールにアクセスします。詳細は、JBoss EAP設定ガイド 管理コンソール を参照してください。
  2. Configuration Subsystems Web (Undertow) Server と選択します。
  3. 設定するサーバー名をクリックします。
  4. 表示 をクリックします。
  5. Listener HTTPS Listener に移動します。
  6. SSL を有効にするリスナーを選択し、SSL の有効化 をクリックしてウィザードを起動します。

    このウィザードでは、以下のシナリオで、SSL を有効にする方法を順を追ってガイドします。

    • 証明書ストアを作成し、自己署名証明書を生成する。
    • Let's Encrypt 認証局から証明書を取得したい。
    • 証明書ストアはすでにファイルシステムにあるが、キーストアの設定がない。
    • 有効な証明書ストアを使用するキーストアの設定が存在する。

ウィザードを使用すると、任意で相互認証のトラストストアを作成できます。

1.5.2.2. Elytron サブシステムを使用してアプリケーションに対して双方向 SSL/TLS を有効化する

  1. クライアントキーストアを取得または生成します。

    $ keytool -genkeypair -alias client -keyalg RSA -keysize 1024 -validity 365 -keystore client.keystore.jks -dname "CN=client" -keypass secret -storepass secret
  2. クライアント証明書をエクスポートします。

    keytool -exportcert  -keystore client.keystore.jks -alias client -keypass secret -storepass secret -file /path/to/client.cer
  3. デプロイしたアプリケーションに対して双方向 SSL/TLS を有効にします。

    JBoss EAP では、デプロイされたアプリケーション用の双方向 SSL/TLS は、security コマンドまたは elytron サブシステムコマンドを使用して有効にできます。

    1. セキュリティーコマンドの使用

      security enable-ssl-http-server コマンドを使用すると、デプロイされたアプリケーションに双方向 SSL/TLS を有効にできます。

      注記

      以下の例では、信頼チェーンが存在しないので、証明書は検証されません。信頼された証明書を使用している場合、クライアントの証明書は問題なく検証できます。

      例: ウィザードの使用

      security enable-ssl-http-server --interactive
      
      Please provide required pieces of information to enable SSL:
      Key-store file name (default default-server.keystore): server.keystore.jks
      Password (blank generated): secret
      What is your first and last name? [Unknown]: localhost
      What is the name of your organizational unit? [Unknown]:
      What is the name of your organization? [Unknown]:
      What is the name of your City or Locality? [Unknown]:
      What is the name of your State or Province? [Unknown]:
      What is the two-letter country code for this unit? [Unknown]:
      Is CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown correct y/n [y]?
      Validity (in days, blank default): 365
      Alias (blank generated): localhost
      Enable SSL Mutual Authentication y/n (blank n): y
      Client certificate (path to pem file): /path/to/client.cer
      Validate certificate y/n (blank y): n
      Trust-store file name (management.truststore): server.truststore.jks
      Password (blank generated): secret
      
      SSL options:
      key store file: server.keystore.jks
      distinguished name: CN=localhost, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown
      password: secret
      validity: 365
      alias: localhost
      client certificate: /path/to/client.cer
      trust store file: server.trustore.jks
      trust store password: secret
      Server keystore file server.keystore.jks, certificate file server.pem and server.csr file will be generated in server configuration directory.
      Server truststore file server.trustore.jks will be generated in server configuration directory.
      Do you confirm y/n: y

      注記

      コマンドを実行すると、管理 CLI がサーバーをリロードします。

      双方向 SSL/TLS 認証を完了するには、サーバーの証明書をクライアントトラストストアにインポートし、クライアント証明書を表示するようにクライアントを設定する必要があります。

    2. elytron サブシステムコマンドの使用

      JBoss EAP では、undertow サブシステムとともに elytron サブシステムを使用してデプロイされたアプリケーションで双方向 SSL/TLS を有効にすることもできます。

      1. キーストアを取得または生成します。

        JBoss EAP で双方向 SSL/TLS を有効化する前に、使用する予定のキーストア、トラストストア、および証明書を取得または生成する必要があります。

        1. サーバーキーストアを作成します。

          /subsystem=elytron/key-store=twoWayKS:add(path=/PATH/TO/server.keystore.jks,credential-reference={clear-text=secret},type=JKS)
          
          /subsystem=elytron/key-store=twoWayKS:generate-key-pair(alias=localhost,algorithm=RSA,key-size=1024,validity=365,credential-reference={clear-text=secret},distinguished-name="CN=localhost")
          
          /subsystem=elytron/key-store=twoWayKS:store()
          注記

          上記のコマンドはキーストアへの絶対パスを使用します。または、relative-to 属性を使用してベースディレクトリー変数を指定し、path は相対パスを指定します。

          /subsystem=elytron/key-store=twoWayKS:add(path=server.keystore.jks,relative-to=jboss.server.config.dir,credential-reference={clear-text=secret},type=JKS)
        2. サーバー証明書をエクスポートします。

          /subsystem=elytron/key-store=twoWayKS:export-certificate(alias=localhost,path=/path/to/server.cer,pem=true)
      2. サーバートラストストアのキーストアを作成し、クライアント証明書をサーバートラストストアにインポートします。

        注記

        以下の例では、信頼チェーンが存在しないので、証明書は検証されません。信頼された証明書を使用している場合、クライアントの証明書は問題なく検証できます。

        /subsystem=elytron/key-store=twoWayTS:add(path=/path/to/server.truststore.jks,credential-reference={clear-text=secret},type=JKS)
        
        /subsystem=elytron/key-store=twoWayTS:import-certificate(alias=client,path=/path/to/client.cer,credential-reference={clear-text=secret},trust-cacerts=true,validate=false)
        
        /subsystem=elytron/key-store=twoWayTS:store()
      3. キーストア key-store を参照する key-manager を設定します。

        /subsystem=elytron/key-manager=twoWayKM:add(key-store=twoWayKS, credential-reference={clear-text=secret})
        重要

        Elytron サブシステムはデフォルトで KeyManagerFactory.getDefaultAlgorithm() を使用してアルゴリズムを決定するため、Red Hat は前のコマンドでアルゴリズム属性を指定しませんでした。ただし、アルゴリズム属性は指定できます。アルゴリズム属性を指定するには、使用している JDK によるキーマネージャーアルゴリズムを知る必要があります。

        たとえば、Sun valueFrom を使用する JDK では PKIX アルゴリズムおよび SunX 509 アルゴリズムを利用できます。

        前のコマンドでは、SunX509 をキーマネージャーアルゴリズム属性として指定できます。

      4. トラストストア key-store を参照する trust-manager を設定します。

        /subsystem=elytron/trust-manager=twoWayTM:add(key-store=twoWayTS)
        重要

        Elytron サブシステムはデフォルトで TrustManagerFactory.getDefaultAlgorithm() を使用してアルゴリズムを決定するため、Red Hat は前のコマンドでアルゴリズム属性を指定しませんでした。ただし、アルゴリズム属性は指定できます。アルゴリズム属性を指定するには、使用している JDK によるトラストマネージャーアルゴリズムを知る必要があります。たとえば、Sun valueFrom を使用する JDK では PKIX アルゴリズムおよび SunX 509 アルゴリズムを利用できます。

        前のコマンドでは、PKIX をトラストマネージャーのアルゴリズム属性として指定できます。

      5. key-managertrust-manager、を参照する server-ssl-context を設定し、クライアント認証を有効化します。

        /subsystem=elytron/server-ssl-context=twoWaySSC:add(key-manager=twoWayKM, protocols=["TLSv1.2"], trust-manager=twoWayTM, need-client-auth=true)
        重要

        利用できるようにする必要のある SSL/TLS プロトコルを決定する必要があります。上記のコマンド例は TLSv1.2 を使用します。cipher-suite-filter 引数を使用して、許可される暗号スイートを指定でき、use-cipher-suites-order 引用して、サーバーの暗号スイートの順序を許可します。use-cipher-suites-order 属性はデフォルトで true に設定されます。これは、レガシー security サブシステムの動作とは異なります。その動作は、デフォルトで、クライアント暗号スイートの順序を許可します。

        警告

        Red Hat では、影響するすべてのパッケージで TLSv1.1 または TLSv1.2 を利用するために SSLv2、SSLv3、および TLSv1.0 を明示的に無効化することを推奨しています。

      6. https-listener が SSL 設定でレガシーセキュリティーレルムを使用するように設定されているかどうかを確認します。

        /subsystem=undertow/server=default-server/https-listener=https:read-attribute(name=security-realm)
        {
            "outcome" => "success",
            "result" => "ApplicationRealm"
        }

        上記のコマンドは、https-listener が SSL 設定の ApplicationRealm レガシーセキュリティーレルムを使用するように設定されていることを示しています。Undertow は、elytron サブシステムではレガシーセキュリティーレルムと ssl-context を同時に参照できません。したがって、レガシーセキュリティーレルムへの参照を削除する必要があります。

        注記

        結果が undefined である場合は、次の手順でセキュリティーレルムへの参照を削除する必要はありません。

      7. レガシーセキュリティーレルムへの参照を削除し、https-listener を Elytron の ssl-context を使用するように更新します。

        注記

        https-listener には、常に security-realm または ssl-context が設定されている必要があります。2 つの設定間で変更する場合は、以下に示すように、コマンドを単一のバッチで実行する必要があります。

        batch
        /subsystem=undertow/server=default-server/https-listener=https:undefine-attribute(name=security-realm)
        /subsystem=undertow/server=default-server/https-listener=https:write-attribute(name=ssl-context, value=twoWaySSC)
        run-batch
      8. サーバーをリロードします。

        reload
        注記

        双方向 SSL/TLS 認証を完了するには、サーバーの証明書をクライアントトラストストアにインポートし、クライアント証明書を表示するようにクライアントを設定する必要があります。

        $ keytool -importcert -keystore client.truststore.jks -storepass secret -alias localhost -trustcacerts -file /path/to/server.cer
      9. クライアント証明書を使用するようにクライアントを設定します。

        双方向 SSL / TLS 認証を完了するには、信頼されたクライアント証明書をサーバーに提示するようにクライアントを設定する必要があります。たとえば、ブラウザーを使用している場合は、信頼された証明書をブラウザーの信頼ストアにインポートする必要があります。

        この手順では、双方向 SSL/TLS を強制しますが、アプリケーションの元の認証方法は変更されません。

        元の認証方法を変更する場合は、JBoss EAP アイデンティティー管理の設定方法証明書による認証設定 を参照してください。

双方向 SSL/TLS がアプリケーション用に有効化されました。

注記

disable-ssl-http-server コマンドを使用すると、デプロイされたアプリケーションの双方向 SSL/TLS を無効にできます。

security disable-ssl-http-server

このコマンドでは、Elytron リソースは削除されません。SSL 設定に ApplicationRealm レガシーセキュリティーレルムを使用するようにシステムを設定します。

1.5.3. Elytron で CRL を使用した証明書失効リストの設定

Elytron で証明書失効に証明書失効リスト (CRL) を使用するように、双方向 SSL/TLS の有効化に使用されるトラストマネージャーを設定します。

前提条件

  • トラストマネージャーは双方向 SSL/TLS を使用するよう設定されます。
  • トラストマネージャーには、失効するためにチェックされる証明書チェーンが含まれます。

手順

  1. トラストマネージャーが、証明書で参照されるディストリビューションポイントから取得した CRL を使用するように設定します。

    /subsystem=elytron/trust-manager=twoWayTM:write-attribute(name=certificate-revocation-list,value={})
  2. 証明書で参照されているディストリビューションポイントから取得した CRL を上書きします。

    /subsystem=elytron/trust-manager=twoWayTM:write-attribute(name=certificate-revocation-list.path, value=intermediate.crl.pem)
  3. 証明書失効に CRL を使用するように trust-manager を設定します。

    • OCSP レスポンダーが証明書失効リストに対しても設定されている場合、証明書失効に CRL を使用するようトラストマネージャーに、値が trueocsp.prefer- CRL 属性も追加します。

      /subsystem=elytron/trust-manager=twoWayTM:write-attribute(name=ocsp.prefer-crls,value="true")
    • OCSP レスポンダーが証明書失効リストに対して設定されていない場合、設定は完了します。

追加情報

1.5.4. Elyton で OCSP を使用した認証失効の設定

双方向 SSL/TLS が、証明書失効リストに Online Certificate Status Protocol (OCSP) レスポンダーを使用するようにするのに使用されるトラストマネージャーを設定します。OCSP は RFC6960 で定義されてい ます。

OCSP レスポンダーと CRL が証明書失効に対して設定されている場合、OCSP レスポンダーはデフォルトで呼び出されます。

前提条件

  • トラストマネージャーは双方向 SSL/TLS を使用するよう設定されます。

手順

  1. 証明書失効に、証明書に定義された OCSP レスポンダーを使用するようにトラストマネージャーを設定します。

    /subsystem=elytron/trust-manager=twoWayTM:write-attribute(name=ocsp,value={})
  2. 証明書で定義された OCSP レスポンダーを上書きします。

    /subsystem=elytron/trust-manager=twoWayTM:write-attribute(name=ocsp.responder,value="http://example.com/ocsp-responder")

追加情報

1.5.5. レガシーセキュリティーレルムの使用

重要

前提条件として、SSL/TLS 暗号化キーと証明書を作成し、アクセス可能なディレクトリーに配置する必要があります。さらに、キーストアエイリアスやパスワード、必要な暗号スイートなどの関連情報もアクセスできる必要があります。SSL/TLS キーおよび証明書の生成例は、方向 SSL/TLS の設定 セクションにある最初の手順を参照してください。暗号化スイートを含む HTTPS リスナーの詳細は、HTTPS リスナーの参照 を参照してください。

1.5.5.1. レガシーセキュリティーレルムを使用したアプリケーション用の一方向 SSL/TLS の有効化

この例では、キーストアの identity.jks がサーバー設定ディレクトリーにコピーされ、指定のプロパティーで設定されたことを仮定します。管理者は、example の独自の値を置き換えてください。

注記

ここで使用する管理 CLI コマンドは、JBoss EAP スタンドアロンサーバーを実行していることを仮定しています。JBoss EAP 管理対象ドメインの管理 CLI を使用する場合の詳細は 管理 CLI ガイド を参照してください。

  1. 最初に HTTPS セキュリティーレルムを追加し、設定します。HTTPS セキュリティーレルムが設定されたら、セキュリティーレルムを参照する undertow サブシステムで https-listener を設定します。

    batch
    
    /core-service=management/security-realm=HTTPSRealm:add
    
    /core-service=management/security-realm=HTTPSRealm/server-identity=ssl:add(keystore-path=identity.jks, keystore-relative-to=jboss.server.config.dir, keystore-password=password1, alias=appserver)
    
    /subsystem=undertow/server=default-server/https-listener=https:write-attribute(name=security-realm, value=HTTPSRealm)
    
    run-batch
    警告

    Red Hat では、影響するすべてのパッケージで TLSv1.1 または TLSv1.2 を利用するために SSLv2、SSLv3、および TLSv1.0 を明示的に無効化することを推奨しています。

  2. JBoss EAP サーバーを再起動し、変更を反映します。

1.5.5.2. レガシーセキュリティーレルムを使用したアプリケーションの双方向 SSL/TLS の有効化

アプリケーションに双方向 SSL/TLS を設定する場合は、Setting up Two-way SSL/TLS for the Management Interfaces で説明されている手順の多くに従います。アプリケーションに双方向 SSL/TLS を設定するには、以下を行う必要があります。

  1. クライアントとサーバー両方のストアを生成します。
  2. クライアントとサーバー両方の証明書をエクスポートします。
  3. opposing トラストストアに証明書をインポートします。
  4. サーバーのキーストアおよびトラストストアを使用するサーバーで、CertificateRealm などのセキュリティーレルムを定義します。
  5. セキュリティーレルムを使用し、クライアント検証が必須となるように undertow サブシステムを更新します。

最初の 4 つの手順は、Setting up Two-way SSL/TLS for the Management Interfaces で説明されています。

重要

新しいセキュリティーレルムが追加されても、サーバーがリロードされていない場合は、サーバーをリロードしてから次の手順を実行する必要があります。

Undertow サブシステムの調整

キーストア、証明書、トラストストア、およびセキュリティーレルムが作成され、設定されると、undertow サブシステムに HTTPS リスナーを追加し、作成したセキュリティーレルムを使用する必要があり、クライアントの検証が必須になります。

/subsystem=undertow/server=default-server/https-listener=https:write-attribute(name=security-realm, value=CertificateRealm)

/subsystem=undertow/server=default-server/https-listener=https:write-attribute(name=verify-client, value=REQUIRED)
重要

変更を反映するには、サーバーをリロードする必要があります。

重要

アプリケーションに双方向 SSL/TLS を有効化した JBoss EAP インスタンスに接続するクライアントは、クライアント証明書またはキーストアにアクセスできなければなりません。つまり、クライアントのキーストアに証明書が含まれるクライアントキーストアが必要になります。クライアントがブラウザーを使用して JBoss EAP インスタンスに接続している場合は、その証明書またはキーストアをブラウザーの証明書マネージャーにインポートする必要があります。

注記

アプリケーションでの双方向 SSL/TLS に加えて、アプリケーションで証明書ベースの認証を使用する方法の詳細は、JBoss EAP アイデンティティー管理の設定方法証明書ベースの認証を使用するためのセキュリティドメインの設定 セクションを参照してください。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.