6.4.3. Kerberos 認証情報を使用したクライアントの承認
AMQ Broker は、ロールをマッピングするときに他のセキュリティーモジュールで使用できるように、JAAS Krb5LoginModule の実装とともにパッケージ化されています。モジュールは、Kerberos 認証されていないピアプリンシパルを AMQ Broker UserPrincipal として設定された Subject のプリンシパルに追加します。その後、認証情報は PropertiesLoginModule または LDAPLoginModule モジュールに渡して、Kerberos 認証のピアプリンシパルを AMQ Broker ロールにマップできます。
Kerberos ピアプリンシパルはロールメンバーとしてのみ存在し、ブローカーユーザーとしては存在しません。
前提条件
Kerberos セキュリティー認証情報を使用して AMQP 接続を承認する前に、アクセプターの GSSAPI メカニズムを有効にする必要があります。
手順
ブローカーを停止します。
ブローカーが Linux で実行されている場合:
BROKER_INSTANCE_DIR/bin/artemis stopブローカーがサービスとして Windows で実行されている場合:
BROKER_INSTANCE_DIR\bin\artemis-service.exe stop
-
BROKER_INSTANCE_DIR/etcの下にあるlogin.config設定ファイルを開きます。 AMQ Broker
Krb5LoginModuleおよびLDAPLoginModuleの設定を追加します。注記LDAP プロバイダーのドキュメントを参照して、設定オプションを確認します。
org.apache.activemq.artemis.spi.core.security.jaas.Krb5LoginModule required ;1 org.apache.activemq.artemis.spi.core.security.jaas.LDAPLoginModule optional initialContextFactory=com.sun.jndi.ldap.LdapCtxFactory connectionURL="ldap://localhost:1024" authentication=GSSAPI saslLoginConfigScope=broker-sasl-gssapi connectionProtocol=s userBase="ou=users,dc=example,dc=com" userSearchMatching="(krb5PrincipalName={0})" userSearchSubtree=true authenticateUser=false roleBase="ou=system" roleName=cn roleSearchMatching="(member={0})" roleSearchSubtree=false ;- 1
- このバージョンの
Krb5LoginModuleは AMQ Broker と共に配布され、Kerberos ID を他の AMQ モジュールでロールマッピングに使用できるブローカー ID に変換します。
ブローカーを起動します。
ブローカーが Linux で実行されている場合:
BROKER_INSTANCE_DIR/bin/artemis runブローカーがサービスとして Windows で実行されている場合:
BROKER_INSTANCE_DIR\bin\artemis-service.exe start
関連情報
AMQ Broker で GSSAPI メカニズムを有効にする方法の詳細は 、ネットワーク接続と Kerberos を参照してください。
PropertiesLoginModule の詳細は、ユーザーとロール を参照してください。
LDAPLoginModule の詳細は、LDAP との統合を 参照してください。