5.5.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 ; 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 ;
注記上記の例で示される
Krb5LoginModule
のバージョンは AMQ Broker で配布され、Kerberos アイデンティティーをロールマッピングに使用できるブローカーアイデンティティーに変換します。ブローカーを起動します。
Linux の場合:
<broker_instance_dir>/bin/artemis run
Windows の場合:
<broker_instance_dir>\bin\artemis-service.exe start
関連情報
- AMQ Broker で GSSAPI メカニズムを有効にする方法は、「Kerberos を使用するネットワーク接続の設定」 を参照してください。
-
PropertiesLoginModule
の詳細は、「基本的なユーザーとパスワード認証の設定」 を参照してください。 -
LDAPLoginModule
の詳細は、「クライアント認証用の LDAP の設定」 を参照してください。