5.3.2.2. ロールベースアクセス制御の設定
ロールベースアクセス制御 (RBAC) は、MBean の属性およびメソッドへのアクセス制限すに使用されます。RBAC を使用すると、管理者はロールに基づいて Web コンソール、管理インターフェイス、コアメッセージなどの全ユーザーに正しいレベルのアクセスを付与できます。
5.3.2.2.1. ロールベースのアクセス設定
以下の手順の例は、ロールを特定の MBean とその属性およびメソッドにマッピングする方法を示しています。
前提条件
- 最初にユーザーとロールを定義する必要があります。詳細は、「基本的なユーザーとパスワード認証の設定」 を参照してください。
手順
-
<broker_instance_dir>/etc/management.xml
設定ファイルを開きます。 role-access
要素を検索し、設定を編集します。以下に例を示します。<role-access> <match domain="org.apache.activemq.artemis"> <access method="list*" roles="view,update,amq"/> <access method="get*" roles="view,update,amq"/> <access method="is*" roles="view,update,amq"/> <access method="set*" roles="update,amq"/> <access method="*" roles="amq"/> </match> </role-access>
-
この場合、ドメイン名が
org.apache.activemq.apache
の MBean 属性を照合検索します。 -
一致する MBean 属性に対する
view
、update
、またはamq
ロールへのアクセスは、ロールを追加するlist*
、get*
、set*
、is*
、および*
アクセスメソッドによって制御されます。method = "*"
(ワイルドカード) 構文は、設定にリストされていない他の前メソッドをすべて指定する方法として使用されます。設定の各アクセスメソッドが MBean メソッド呼び出しに変換されます。 -
呼び出された MBean メソッドは、設定に記載されているメソッドと照合されます。たとえば、ドメインが
org.apache.activemq.artemis
の MBean でlistMessages
というメソッドを呼び出すと、ブローカーはlist
メソッドの設定で定義されたロールと、アクセスの照合を行います。 MBean の完全なメソッド名を使用してアクセスを設定することもできます。以下に例を示します。
<access method="listMessages" roles="view,update,amq"/>
-
この場合、ドメイン名が
ブローカーを起動または再起動します。
-
Linux の場合:
<broker_instance_dir>/bin/artemis run
-
Windows の場合:
<broker_instance_dir>\bin\artemis-service.exe start
-
Linux の場合:
MBean プロパティーに一致する key
属性を追加して、ドメイン内の特定の MBean を照合することもできます。