第5章 ユーザーとロール
このブローカーは、該当のアドレスに基づいてキューにセキュリティーを適用するための柔軟なロールベースのセキュリティーモデルをサポートします。キューは、1 対 1 (ポイントツーポイントスタイルのメッセージングの場合) または多対 1 (パブリッシュ/サブスクライブスタイルのメッセージングの場合) のアドレスにバインドされる点を理解することが重要です。メッセージがアドレスに送信されると、サーバーはそのアドレスにバインドされたキューのセットを検索し、メッセージをそのキューのセットにルーティングします。
デフォルトの設定 (PropertiesLoginModule
を使用) では、ユーザーと割り当てられたロールは 3 つの設定ファイルで定義されます。
-
login.config
-
artemis-users.properties
-
artemis-roles.properties
これらの各ファイルについては、次のセクションで詳しく説明します。
コマンドラインインターフェイスを使用すると、インタラクティブなプロセスを介してこれらのファイルにユーザーとロールを追加できます。
artemis-users.properties
ファイルには、セキュリティーを確保するために、ハッシュ化されたパスワードを含めることができます。
5.1. ゲストアクセスの有効化
ログイン認証情報のないユーザー、または認証情報の検証に失敗したユーザーには、guest アカウントを使用してブローカーへの制限付きアクセスを許可できます。
コマンドラインの切り替えを使用して --allow-anonymous
(--require-login
の逆)、ゲストアクセスを有効にし、ブローカーインスタンスを作成できます。
ゲストアカウントは、login.config
ファイルで設定されます。
手順
-
login.config
ファイルで、ゲストアカウントの名前とロールを次のように定義します。
activemq { org.apache.activemq.artemis.spi.core.security.jaas.GuestLoginModule required org.apache.activemq.jaas.guest.user="guest" 1 org.apache.activemq.jaas.guest.role="guest"; 2 };
ゲストログインモジュールを使用すると、認証情報を持たないユーザー (設定方法によっては、認証情報が無効なユーザーも) がブローカーにアクセスできます。org.apache.activemq.artemis.spi.core.security.jaas.GuestLoginModule
により実装されます。
ゲストログインモジュールは、プロパティーログインモジュールなどの別のログインモジュールと組み合わせて使用するのが一般的です。そのユースケースの詳細は、「複数のログインモジュールの使用」セクションを参照してください。