5.2.2.2. ゲストアクセスの設定
ログイン認証情報がないユーザーや、認証情報が認証に失敗するユーザーの場合は、ゲストアカウントを使用してブローカーへの制限されたアクセスを付与できます。
コマンドラインの切り替えを使用して --allow-anonymous
(--require-login
の逆)、ゲストアクセスを有効にし、ブローカーインスタンスを作成できます。
以下の手順は、ゲストアクセスを設定する方法を説明します。
前提条件
- この手順では、基本的なユーザーとパスワード認証がすでに設定されていることを前提としています。詳細は、「基本的なユーザーとパスワード認証の設定」 を参照してください。
手順
-
基本的なユーザーとパスワード認証用に指定した
<broker_instance_dir>/etc/login.config
設定ファイルを開きます。 以前追加したプロパティーログインモジュール設定の後に、ゲストログインモジュール設定を追加します。以下に例を示します。
activemq { org.apache.activemq.artemis.spi.core.security.jaas.PropertiesLoginModule sufficient debug=true org.apache.activemq.jaas.properties.user="artemis-users.properties" org.apache.activemq.jaas.properties.role="artemis-roles.properties"; org.apache.activemq.artemis.spi.core.security.jaas.GuestLoginModule sufficient debug=true org.apache.activemq.jaas.guest.user="guest" org.apache.activemq.jaas.guest.role="restricted"; };
org.apache.activemq.artemis.spi.core.security.jaas.GuestLoginModule
- 実装クラス。
org.apache.activemq.jaas.guest.user
- 匿名ユーザーに割り当てられたユーザー名。
org.apache.activemq.jaas.guest.role
- 匿名ユーザーに割り当てられたロール。
上記の設定に基づいて、ユーザーが認証情報を提供すると、ユーザーとパスワード認証モジュールがアクティブになります。ユーザーが認証情報を提供しない場合や、指定した認証情報が正しくない場合は、ゲスト認証がアクティブになります。
5.2.2.2.1. ゲストアクセスの例
以下の例は、認証情報がないユーザーだけがゲストとしてログインしているユースケースに対するゲストアクセスの設定を示しています。この例では、ログインモジュールの順序が以前の設定手順と照合されていることを確認します。また、プロパティーログインモジュールに割り当てられるフラグは requisite
に変更されています。
activemq { org.apache.activemq.artemis.spi.core.security.jaas.GuestLoginModule sufficient debug=true credentialsInvalidate=true org.apache.activemq.jaas.guest.user="guest" org.apache.activemq.jaas.guest.role="guests"; org.apache.activemq.artemis.spi.core.security.jaas.PropertiesLoginModule requisite debug=true org.apache.activemq.jaas.properties.user="artemis-users.properties" org.apache.activemq.jaas.properties.role="artemis-roles.properties"; };
前述の設定に基づいて、ログイン認証情報が指定されていない場合は、ゲスト認証モジュールがアクティベートされます。
このユースケースでは、ゲストログインモジュールの設定で credentialsInvalidate
オプションを true
に設定する必要があります。
プロパティーログインモジュールは、認証情報が提供されているとアクティベートされます。クレデンシャルが有効である必要があります。
関連情報
-
Java Authentication and Authorization Service (JAAS) の詳細は、Java ベンダーのドキュメントを参照してください。たとえば、
login.config
の設定に関する Oracle のチュートリアルは、Oracle Java ドキュメントの JAAS Login Configuration File を参照してください。 - クライアントクレデンシャルを検証するように LDAP ログインモジュールを設定する方法は、「クライアント認証用の LDAP の設定」 を参照してください。
- 設定ファイルでパスワードを暗号化する方法は、「設定ファイルでのパスワードの暗号化」 を参照してください。