1.9. Remoting サブシステムとの Elytron の等号

1.9.1. Elytron のリモーティングコネクターとの統合

リモーティングコネクターは SASL 認証ファクトリー、ソケットバインディング、およびオプションの SSL コンテキストによって指定されます。特にコネクターの属性は以下のようになります。

sasl-authentication-factory
このコネクターに対する要求の認証に使用する SASL 認証ファクトリーへの参照。このファクトリーの作成に関する詳細は、「Elytron 認証ファクトリーの作成」を参照してください
socket-binding
コネクターが受信リクエストをリッスンするインターフェースおよびポートを詳細化しているソケットバインディングへの参照。
ssl-context
このコネクターに使用するサーバー側の SSL コンテキストのオプションの参照。SSL コンテキストには、使用されるサーバーキーマネージャーとトラストマネージャーが含まれます。また、SSL コンテキストは、SSL が必要なインスタンスで定義する必要があります。

たとえば、以下のようにコネクターを追加できます。ここでは、SASL_FACTORY_NAME はすでに定義された認証ファクトリーで、SOCKET_BINDING_NAME は既存のソケットバインディングです。

/subsystem=remoting/connector=CONNECTOR_NAME:add(sasl-authentication-factory=SASL_FACTORY_NAME,socket-binding=SOCKET_BINDING_NAME)

SSL が必要な場合は、以下のように ssl-context 属性を使用して、事前設定された server-ssl-context が参照されることがあります。

/subsystem=remoting/connector=CONNECTOR_NAME:add(sasl-authentication-factory=SASL_FACTORY_NAME,socket-binding=SOCKET_BINDING_NAME,ssl-context=SSL_CONTEXT_NAME)

1.9.1.1. elytron サブシステムを使用したリモーティングコネクターでの一方向 SSL/TLS の有効化

以下の SASL メカニズムは、SSL/TLS などの外部のセキュアなチャネルへのチャネルバインディングに対応しています。

  • GS2-KRB5-PLUS
  • SCRAM-SHA-1-PLUS
  • SCRAM-SHA-256-PLUS
  • SCRAM-SHA-384-PLUS
  • SCRAM-SHA-512-PLUS

これらのメカニズムを使用するには、カスタム SASL ファクトリー を設定するか、事前定義された SASL 認証ファクトリーのいずれかを変更することができます。SASL メカニズムセレクター は、クライアントで使用することで、適切な SASL メカニズムを指定できます。

前提条件

  • key-store が設定されている。
  • key-manager が設定されている。
  • 定義した key -manager を参照する server-ssl- contextが設定されます。

手順

  1. コネクターの socket-binding を作成します。以下のコマンドは、ポート 11199 でリッスンする oneWayBinding バインディングを定義します。

    /socket-binding-group=standard-sockets/socket-binding=oneWayBinding:add(port=11199)
  2. SASL 認証ファクトリー、以前に作成したソケットバインディング、および SSL コンテキストを参照するコネクターを作成します。

    /subsystem=remoting/connector=oneWayConnector:add(sasl-authentication-factory=SASL_FACTORY,socket-binding=oneWayBinding,ssl-context=SSL_CONTEXT)
    重要

    security-realmssl-context両方 が定義されている場合、JBoss EAP は ssl-context によって提供される SSL / TLS 設定を使用します。

  3. サーバー証明書を信頼するようにクライアントを設定します。汎用クライアントの例は、「Elytron Client Side One Way Example」を参照してください。この例では、クライアントの trust-store を使用して ssl-context を設定します。

1.9.1.2. elytron サブシステムを使用したリモーティングコネクターでの双方向 SSL/TLS の有効化

以下の SASL メカニズムは、SSL/TLS などの外部のセキュアなチャネルへのチャネルバインディングに対応しています。

  • GS2-KRB5-PLUS
  • SCRAM-SHA-1-PLUS
  • SCRAM-SHA-256-PLUS
  • SCRAM-SHA-384-PLUS
  • SCRAM-SHA-512-PLUS

これらのメカニズムを使用するには、カスタム SASL ファクトリー を設定するか、事前定義された SASL 認証ファクトリーのいずれかを変更してこれらのメカニズムを提供できます。SASL メカニズムセレクターは、クライアントで使用することで、適切な SASL メカニズムを指定できます。

前提条件

  • クライアント証明書とサーバー証明書用の個別の key-store コンポーネントが設定されます。
  • サーバー key- store の key- manager が設定されている。
  • サーバー trust- store の trust- manager が設定されている。
  • 定義した key -manager および trust-manager を参照する server- ssl-context が設定されます

手順

  1. コネクターの socket-binding を作成します。以下のコマンドは、ポート 11199 でリッスンする twoWayBinding バインディングを定義します。

    /socket-binding-group=standard-sockets/socket-binding=twoWayBinding:add(port=11199)
  2. SASL 認証ファクトリー、以前に作成したソケットバインディング、および SSL コンテキストを参照するコネクターを作成します。

    /subsystem=remoting/connector=twoWayConnector:add(sasl-authentication-factory=SASL_FACTORY,socket-binding=twoWayBinding,ssl-context=SSL_CONTEXT)
    重要

    security-realmssl-context両方 が定義されている場合、JBoss EAP は ssl-context によって提供される SSL / TLS 設定を使用します。

  3. サーバー証明書を信頼するようクライアントを設定し、その証明書をサーバーへ提示します。

    双方向 SSL / TLS 認証を完了するには、信頼されたクライアント証明書をサーバーに提示するようにクライアントを構成する必要があります。たとえば、ブラウザーを使用している場合は、信頼される証明書をブラウザーのトラストストアにインポートする必要があります。汎用クライアントの例は、「Elytron Client Side Two Way Example」を参照してください。この例では、クライアントの trust-storekey-store を使用して ssl-context を設定します。

双方向 SSL/TLS がリモーティングコネクターで有効化されるようになりました。