第6章 セキュリティー
AMQ Broker 7 は、着信ネットワーク接続を保護するためのトランスポート層セキュリティーと、それぞれのアドレスに基づいてキューへのアクセスを保護するための承認を提供します。これらの領域の両方で、セキュリティーモデルは AMQ 6 に非常に似ています。ただし、設定プロセスは異なります。
6.1. トランスポート層セキュリティーの設定方法
AMQ 6 と同様に、AMQ Broker 7 では、SSL/TLS を使用して着信ネットワーク接続を保護できます。ただし、設定構文と設定プロパティーにはいくつかの違いがあります。
AMQ 6 では、SSL コンテキストを作成してキーストアとトラストストアを定義し、保護する各トランスポートコネクターに SSL 属性を追加することで、トランスポート層セキュリティーを設定していました。
AMQ Broker 7 では、トランスポート層は SSL をネイティブに使用する Netty に基づいています。つまり、トランスポート層のセキュリティーを設定するには、保護する各アクセプターに必要な SSL 属性を追加するだけです。別の SSL コンテキストを追加する必要はありません。
たとえば、次の設定は、OpenWire クライアントからの安全な接続を受け入れます。
AMQ 6 で
INSTALL_DIR/etc/activemq.xml
ファイルで SSL コンテキストを定義します。<sslContext> <sslContext keyStore="file:${activemq.conf}/broker.ks" keyStorePassword="password"/> </sslContext>
ブローカー設定ファイルで、トランスポートコネクターを作成して、OpenWire クライアントからの安全な接続を受け入れます。
<transportConnector name="ssl" uri="ssl://localhost:61617?transport.needClientAuth=true"/>
AMQ Broker 7 で
BROKER_INSTANCE_DIR/etc/broker.xml
設定ファイルで、アクセプターを作成または更新して、OpenWire クライアントからのセキュアな接続を受け入れます。<acceptor name="netty-ssl-acceptor">tcp://localhost:61617?sslEnabled=true;keyStorePath=${data.dir}/../etc/broker.ks;keyStorePassword=password;needClientAuth=true</acceptor>
一方向または双方向の TLS を設定できます。次の表で、これらの方法について説明します。
メソッド | 説明 |
---|---|
一方向 TLS | ブローカーのみが証明書を表示します。この方法では、サーバー側の証明書用の Java KeyStore が必要です。 詳細は、AMQ Broker の設定 の ネットワーク接続の保護 を参照してください。 |
双方向 TLS (相互認証) | ブローカーとクライアントの両方が証明書を提示します。この方法では、サーバー側の証明書用の Java KeyStore と、ブローカーが信頼するクライアントのキーを保持する TrustStore が必要です。 詳細は、AMQ Broker の設定 の ネットワーク接続の保護 を参照してください。 |
AMQ Broker 7 の既存のキーストアとトラストストアを再利用するには、それらを AMQ Broker 7 ブローカーインスタンスにコピーします。
関連情報
- すべてのトランスポート層セキュリティー設定プロパティーの完全なリストについては、AMQ Broker の設定 の Netty TLS パラメーター を参照してください。