3.5. ロールベースのアクセス制御
ロールベースのアクセス制御の基本は、JBoss EAPSecurity Architectureガイドの ロールベースのアクセス制御 と 管理インターフェイスへの RBAC の追加 で説明されています。
3.5.1. ロールベースのアクセス制御の有効化 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、Role-Based Access Control (RBAC) システムが無効になっています。有効にするには、provider 属性を simple から rbac に変更します。provider は、management 要素の access-control 要素の属性です。これは、管理 CLI を使用するか、サーバーがオフラインの場合にはサーバー設定 XML ファイルを編集して実行できます。稼働中のサーバーで RBAC を無効化または有効化した場合、サーバー設定をリロードして変更を反映する必要があります。
プロバイダーを rbac に変更する前に、RBAC ロールのいずれかにマッピングされるユーザーを含めるようにしてください (Administrator または SuperUser ロールのいずれかが望ましい)。シャットダウンして XML 設定を編集する以外に、インストールを管理する方法はありません。JBoss EAP に同梱される標準 XML 設定のいずれかで開始した場合、$local ユーザーは SuperUser ロールにマッピングされ、local 認証スキームが有効になります。これにより、JBoss EAP プロセスと同じシステムで CLI を実行するユーザーに、完全な管理パーミッションを付与できます。リモート CLI ユーザーと Web ベースの管理コンソールユーザーには、パーミッションが与えられません。
プロバイダーを rbac に切り替える前に、$local 以外のユーザーをマッピングすることが推奨されます。プロバイダーが simple に設定されている場合でも、rbac プロバイダーに関連付けられたすべての設定を実行できます。
一度有効にすると、無効化できるのは Administrator または SuperUser ロールのユーザーのみとなります。デフォルトでは、サーバーと同じマシンで実行される場合、管理 CLI は SuperUser ロールとして実行されます。
RBAC を有効化する CLI
管理 CLI で RBAC を有効にするには、アクセス承認リソースの write-attribute 操作で provider 属性を rbac に設定します。
マネージドドメインでは、アクセス制御設定はドメイン全体の設定の一部です。そのため、リソースアドレスは上記のリソースアドレスと同じですが、管理 CLI はマスタードメインコントローラーに接続されます。
スタンドアロンサーバーと同様に、変更を有効にするには、リロードまたは再起動が必要です。マネージドドメインでは、ドメインのすべてのホストおよびサーバーは、マスタードメインコントローラーから、リロードまたは再起動する必要があります。
RBAC を無効にする管理 CLI コマンド
管理 CLI で RBAC を無効化にするには、アクセス承認リソースの write-attribute 操作で provider 属性を simple に設定します。
/core-service=management/access=authorization:write-attribute(name=provider, value=simple)
/core-service=management/access=authorization:write-attribute(name=provider, value=simple)
RBAC を有効または無効にする XML 設定
サーバーがオフラインの場合、XML 設定を編集して RBAC を有効または無効にすることができます。これを行うには、管理要素の access-control 要素の provider 属性を編集します。この値を rbac に設定して有効にし、simple で無効にします。
例: RBAC を有効または無効にする XML 設定
3.5.2. Permission Combination Policy の変更 リンクのコピーリンクがクリップボードにコピーされました!
Permission Combination Policy は、ユーザーが複数のロールが割り当てられているかどうかの判断方法を決定します。permissive または reject に設定できます。デフォルトは permissive です。
permissive に設定すると、アクションを許可するユーザーにロールが割り当てられていると、そのアクションが許可されます。
rejecting に設定すると、複数のロールがユーザーに割り当てられている場合、アクションは許可されません。つまり、このポリシーが rejecting に設定されていると、各ユーザーには単一のロールのみを割り当てる必要があります。ポリシーが rejecting に設定されている場合、複数のロールを持つユーザーは管理コンソールまたは管理 CLI を使用できません。
Permission Combination Policy は、permission-combination-policy 属性を permissive または rejecting のいずれかに設定して設定します。これは、管理 CLI を使用するか、サーバーがオフラインの場合にはサーバー設定 XML ファイルを編集して実行できます。Permission-combination-policy 属性は access-control 要素の一部で、access-control 要素は management 要素にあります。
Permission Combination Policy の設定
アクセス承認リソースの write-attribute 操作を使用して、permission-combination-policy 属性を必要なポリシー名に設定します。
/core-service=management/access=authorization:write-attribute(name=permission-combination-policy, value=POLICYNAME)
/core-service=management/access=authorization:write-attribute(name=permission-combination-policy, value=POLICYNAME)
有効なポリシー名は rejecting および permissive になります。
例: Permission Combination Policy を拒否する管理 CLI コマンド
/core-service=management/access=authorization:write-attribute(name=permission-combination-policy, value=rejecting)
/core-service=management/access=authorization:write-attribute(name=permission-combination-policy, value=rejecting)
サーバーがオフラインの場合、XML 設定を編集してパーミッションの組み合わせポリシー (permission combination policy) 値を変更できます。これを行うには、access-control 要素の permission-combination-policy 属性を編集します。
例: Permission Combination Policy を拒否する XML 設定
3.5.3. ロールの管理 リンクのコピーリンクがクリップボードにコピーされました!
RBAC (Role-Based Access Control) を有効にすると、管理ユーザーが許可されている内容は、ユーザーが割り当てられているロールによって決まります。JBoss EAP 7 は、ユーザーおよびグループメンバーシップの両方に基づた包含と除外のシステムを使用して、ユーザーが所属するロールを決定します。
ユーザーは、以下の場合にロールに割り当てられると見なされます。
- ロールに含めるユーザーとしてリスト表示される、または
- ロールに含まれるようにリスト表示されるグループのメンバー。
また、ユーザーが以下を実行しない場合、ユーザーはロールに割り当てられると見なされます。
- ロールから除外するユーザーとしてリスト、または
- ロールから除外されるリストのグループのメンバーです。
除外は包含よりも優先されます。
ユーザーおよびグループのロール包含および除外の設定は、管理コンソールと管理 CLI の両方を使用して設定できます。
この設定を実行できるのは、SuperUser または Administrator ロールのユーザーのみです。
3.5.3.1. 管理 CLI を使用したユーザーロール割り当ての設定 リンクのコピーリンクがクリップボードにコピーされました!
ユーザーおよびグループのロールへのマッピングの設定は、role-mapping 要素として /core-service=management/access=authorization に位置します。
この設定を実行できるのは、SuperUser または Administrator ロールのユーザーのみです。
ロール割り当て設定の表示
read-children-names 操作を使用して、設定されたロールの完全なリストを取得します。
指定した role-mapping の read-resource 操作を使用して、特定のロールの完全な詳細を取得します。
新規ロールの追加
この手順では、ロールの role-mapping エントリーを追加する方法を説明します。これは、ロールを設定する前に行う必要があります。
add 操作で、新しいロール設定を追加します。
/core-service=management/access=authorization/role-mapping=ROLENAME:add
/core-service=management/access=authorization/role-mapping=ROLENAME:add
ROLENAME は、Auditor などの新規マッピングに使用されるロールの名前です。
例: 新規ロール設定の管理 CLI コマンド
/core-service=management/access=authorization/role-mapping=Auditor:add
/core-service=management/access=authorization/role-mapping=Auditor:add
ロールに含まれるユーザーの追加
この手順では、ロールの、含まれるリストにユーザーを追加する方法を説明します。
ロールの設定が行われていない場合は、そのロールの role-mapping エントリーを最初に実行する必要があります。
add 操作を使用して、ロール、追加リストにユーザーエントリーを追加します。
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:add(name=USERNAME, type=USER)
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:add(name=USERNAME, type=USER)
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
user-USERNAME(例:user-max) などのエイリアスの命名規則を使用することを推奨します。 -
username は、
maxなどの包含リストに追加されるユーザーの名前です。
例: ロールに含まれるユーザーの管理 CLI コマンド
/core-service=management/access=authorization/role-mapping=Auditor/include=user-max:add(name=max, type=USER)
/core-service=management/access=authorization/role-mapping=Auditor/include=user-max:add(name=max, type=USER)
ユーザーをロールで除外したものとして追加
この手順では、ロールの除外リストにユーザーを追加する方法を説明します。
ロールの設定が行われていない場合は、そのロールの role-mapping エントリーを最初に実行する必要があります。
add 操作を使用して、ロールの除外リストにユーザーエントリーを追加します。
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:add(name=USERNAME, type=USER)
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:add(name=USERNAME, type=USER)
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
USERNAME は、
maxなどの除外リストに追加されているユーザーの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
user-USERNAME(例:user-max) などのエイリアスの命名規則を使用することを推奨します。
例: ロールで除外される管理 CLI コマンドユーザー
/core-service=management/access=authorization/role-mapping=Auditor/exclude=user-max:add(name=max, type=USER)
/core-service=management/access=authorization/role-mapping=Auditor/exclude=user-max:add(name=max, type=USER)
ユーザーロール包含設定の削除
この手順では、ロールマッピングからユーザー包含エントリーを削除する方法を説明します。
remove 操作を使用してエントリーを削除します。
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:remove
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:remove
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
user-USERNAME(例:user-max) などのエイリアスの命名規則を使用することを推奨します。
例: ユーザーロールの包含設定を削除する管理 CLI コマンド
/core-service=management/access=authorization/role-mapping=Auditor/include=user-max:remove
/core-service=management/access=authorization/role-mapping=Auditor/include=user-max:remove
包含のリストからユーザーを削除しても、ユーザーはシステムから削除されません。また、ロールがそのユーザーに割り当てられないようにします。ロールはグループメンバーシップに基づいて依然として割り当てられる可能性があります。
ユーザーロール除外の設定の削除
この手順では、ロールマッピングからユーザー除外エントリーを削除する方法を説明します。
削除操作でエントリーを削除します。
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:remove
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:remove
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
user-USERNAME(例:user-max) などのエイリアスの命名規則を使用することを推奨します。
/core-service=management/access=authorization/role-mapping=Auditor/exclude=user-max:remove
/core-service=management/access=authorization/role-mapping=Auditor/exclude=user-max:remove
除外のリストからユーザーを削除しても、ユーザーはシステムから削除されません。また、そのロールが必ずそのユーザーに割り当てられるようになるわけではありません。依然としてロールはグループメンバーシップに基づいて除外される可能性があります。
3.5.4. Elytron サブシステムを使用したユーザーロール割り当ての設定 リンクのコピーリンクがクリップボードにコピーされました!
ロールの管理セクションで説明しているように、ユーザーのロールマッピングを直接追加することに加え、elytron サブシステムによって提供されるアイデンティティーから直接取得されるように RBAC ロールを設定することもできます。
RBAC システムを設定して elytron サブシステムによって提供されるロールを使用するには、以下を実行します。
/core-service=management/access=authorization:write-attribute(name=use-identity-roles,value=true)
/core-service=management/access=authorization:write-attribute(name=use-identity-roles,value=true)
この機能を使用するには RBAC が有効にされており、プリンシパルには RBAC ロールがなければなりません。
3.5.5. ロールおよびユーザーグループ リンクのコピーリンクがクリップボードにコピーされました!
ユーザーグループは、1 人以上のユーザーに割り当てることのできる任意のラベルです。管理インターフェイスを使用して認証を行う場合、管理インターフェイスのセキュア化方法に応じて、ユーザーには elytron サブシステムまたはコア管理認証のいずれかからグループが割り当てられます。RBAC システムは、所属するユーザーグループに応じて、自動的にロールをユーザーに割り当てるように設定できます。また、グループメンバーシップに基づいてロールからユーザーを除外することもできます。
3.5.6. 管理 CLI を使用したグループロール割り当ての設定 リンクのコピーリンクがクリップボードにコピーされました!
ロールに含まれる、またはロールから除外されるグループは、管理コンソールおよび管理 CLI で設定できます。このトピックでは、管理 CLI の使用についてのみ説明します。
ユーザーおよびグループのロールへのマッピングの設定は、role-mapping 要素として /core-service=management/access=authorization の管理 API に位置します。
この設定を実行できるのは、SuperUser または Administrator ロールのユーザーのみです。
グループロール割り当て設定の表示
read-children-names 操作を使用して、設定されたロールの完全なリストを取得します。
指定した role-mapping の read-resource 操作を使用して、特定のロールの完全な詳細を取得します。
新規ロールの追加
この手順では、ロールの role-mapping エントリーを追加する方法を説明します。これは、ロールを設定する前に行う必要があります。
add 操作で、新しいロール設定を追加します。
/core-service=management/access=authorization/role-mapping=ROLENAME:add
/core-service=management/access=authorization/role-mapping=ROLENAME:add
ロールに含まれるグループの追加
この手順では、ロールの包含リストにグループを追加する方法を説明します。
ロールの設定が行われていない場合は、そのロールの role-mapping エントリーを最初に実行する必要があります。
add 操作を使用して、ロール、追加リストにグループエントリーを追加します。
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:add(name=GROUPNAME, type=GROUP)
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:add(name=GROUPNAME, type=GROUP)
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
GROUPNAME は、
investigatorsなど、包含リストに追加されるグループの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
group-GROUPNAME(例:group-investigators) などのエイリアスの命名規則を使用することを推奨します。
例: ロールに含まれるグループを追加する管理 CLI コマンド
/core-service=management/access=authorization/role-mapping=Auditor/include=group-investigators:add(name=investigators, type=GROUP)
/core-service=management/access=authorization/role-mapping=Auditor/include=group-investigators:add(name=investigators, type=GROUP)
ロールの除外としてグループを追加
この手順では、ロールの除外リストにグループを追加する方法を説明します。
ロールの設定が行われていない場合は、そのロールの role-mapping エントリーを最初に作成する必要があります。
add 操作を使用して、ロールの除外リストにグループエントリーを追加します。
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:add(name=GROUPNAME, type=GROUP)
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:add(name=GROUPNAME, type=GROUP)
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
GROUPNAME は、
supervisorsなど、包含リストに追加されるグループの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
group-GROUPNAME(例:group-supervisors) などのエイリアスの命名規則を使用することを推奨します。
例: ロールの除外としてグループを追加する管理 CLI コマンド
/core-service=management/access=authorization/role-mapping=Auditor/exclude=group-supervisors:add(name=supervisors, type=GROUP)
/core-service=management/access=authorization/role-mapping=Auditor/exclude=group-supervisors:add(name=supervisors, type=GROUP)
グループロール包含設定の削除
この手順では、ロールマッピングからグループ包含エントリーを削除する方法を説明します。
remove 操作を使用してエントリーを削除します。
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:remove
/core-service=management/access=authorization/role-mapping=ROLENAME/include=ALIAS:remove
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
group-GROUPNAME(例:group-investigators) などのエイリアスの命名規則を使用することを推奨します。
例: グループロールの包含設定を削除する管理 CLI コマンド
/core-service=management/access=authorization/role-mapping=Auditor/include=group-investigators:remove
/core-service=management/access=authorization/role-mapping=Auditor/include=group-investigators:remove
包含のリストからグループを削除しても、グループはシステムから削除されません。また、ロールがこのグループのユーザーに割り当てられないようにします。このロールは、引き続きグループのユーザーに割り当てられます。
ユーザーグループ除外エントリーの削除
この手順では、ロールマッピングからグループ除外エントリーを削除する方法を説明します。
remove 操作を使用してエントリーを削除します。
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:remove
/core-service=management/access=authorization/role-mapping=ROLENAME/exclude=ALIAS:remove
-
ROLENAME は、
Auditorなどの、設定されるているロールの名前です。 -
ALIAS は、このマッピングの一意の名前です。Red Hat は、
group-GROUPNAME(例:group-supervisors) などのエイリアスの命名規則を使用することを推奨します。
/core-service=management/access=authorization/role-mapping=Auditor/exclude=group-supervisors:remove
/core-service=management/access=authorization/role-mapping=Auditor/exclude=group-supervisors:remove
除外のリストからグループを削除しても、システムからそのグループは削除されません。また、ロールがグループのメンバーに割り当てられることを保証する訳ではありません。依然としてロールはグループメンバーシップに基づいて除外される可能性があります。
3.5.7. LDAP での RBAC の使用 リンクのコピーリンクがクリップボードにコピーされました!
LDAP で RBAC を使用する基本と、JBoss EAP が LDAP で RBAC を使用するよう設定する方法は、JBoss EAP アイデンティティー管理の設定方法 の LDAP および RBAC セクションを参照してください。
3.5.8. スコープ指定されたロール リンクのコピーリンクがクリップボードにコピーされました!
スコープ指定されたロールは、標準的なロールのパーミッションを付与するユーザー定義のロールです。ただし、JBoss EAP マネージドドメインの 1 つ以上のサーバーグループまたはホストに対してのみ適用されます。スコープ指定されたロールでは、管理ユーザーに、必要なサーバーグループまたはホストのみに制限されるパーミッションを付与することができます。
スコープ指定されたロールは、Administrator または SuperUser ロールが割り当てられているユーザーが作成できます。
これらは、以下の 5 つの特性によって定義されます。
- 一意な名前。
- ベースとなる標準ロール。
- サーバーグループまたはホストに適用される場合。
- 制限されたサーバーグループまたはホストのリスト。
-
すべてのユーザーが自動的に組み込まれるかどうか。デフォルトは
falseです。
作成すると、スコープ指定されたロールは標準ロールと同じ方法でユーザーおよびグループに割り当てることができます。
スコープ指定されたロールを作成しても、新しいパーミッションを定義することはできません。スコープ指定されたロールは、制限されたスコープ内で既存のロールのパーミッションを適用する場合にのみ使用できます。たとえば、スコープ指定されたロールは、単一のサーバーグループに制限されている Deployer ロールに基づいて作成できます。
ロールには、以下の 2 つのスコープのみを使用できます。
- ホストスコープ指定ロール
-
ホストスコープ指定ロールは、そのロールのパーミッションは単一または複数のホストに制限されます。つまり、アクセスは関連する
/host=*/リソースツリーに提供されますが、他のホストに固有のリソースは非表示になります。 - サーバーグループスコープ指定ロール
- サーバーグループスコープ指定ロールは、そのロールのパーミッションを 1 つ以上のサーバーグループに制限します。また、ロールのパーミッションは、指定した server-groups に関連付けられたプロファイル、ソケットバインディンググループ、サーバー設定、およびサーバーリソースにも適用されます。サーバーグループに論理的に関連していないものの内部のサブリソースは、ユーザーには認識できません。
ユーザービリティーを強化する管理モデルのシンプルなビューを提供するために、server-group および host のスコープ指定されたロールに一部のリソースがアドレス指定できなくなります。これは、機密データを保護するためにアドレス指定できないリソースとは異なります。
host スコープ指定されたロールの場合は、ロールに指定されたサーバーグループに関連していなければ、管理モデルの /host=* 部分のリソースが表示されないことを意味します。
server-group のスコープ指定ロールの場合は、ロールに指定されたサーバーグループに関連しない場合、管理モデルの profile、socket-binding-group、deployment、deployment-overlay、server-group、server-config、server の部分のリソースが表示されないことを意味します。
3.5.8.1. 管理 CLI からのスコープ指定されたロールの設定 リンクのコピーリンクがクリップボードにコピーされました!
この設定を実行できるのは、SuperUser または Administrator ロールのユーザーのみです。
新しいスコープ指定されたロールの追加
スコープ設定されたロールを新たに追加するには、以下の操作を行う必要があります。
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:add
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:add
/core-service=management/access=authorization/server-group-scoped-role=NEW-SCOPED-ROLE:add(base-role=BASE-ROLE, server-groups=[SERVER-GROUP-NAME])
/core-service=management/access=authorization/server-group-scoped-role=NEW-SCOPED-ROLE:add(base-role=BASE-ROLE, server-groups=[SERVER-GROUP-NAME])
NEW-SCOPED-ROLE、BASE-ROLE、および SERVER-GROUP-NAME を適切な情報に置き換えます。
スコープ指定ロールマッピングの表示および編集
スコープ設定ロールの詳細 (メンバーを含む) は、以下のコマンドを使用して表示できます。
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:read-resource(recursive=true)
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:read-resource(recursive=true)
NEW-SCOPED-ROLE を適切な情報に置き換えます。
スコープ指定ロールの詳細を編集するには、write-attribute コマンドを使用できます。以下に例を示します。
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:write-attribute(name=include-all, value=true)
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:write-attribute(name=include-all, value=true)
NEW-SCOPED-ROLE を適切な情報に置き換えます。
スコープ指定ロールの削除
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:remove
/core-service=management/access=authorization/role-mapping=NEW-SCOPED-ROLE:remove
/core-service=management/access=authorization/server-group-scoped-role=NEW-SCOPED-ROLE:remove
/core-service=management/access=authorization/server-group-scoped-role=NEW-SCOPED-ROLE:remove
NEW-SCOPED-ROLE を適切な情報に置き換えます。
ユーザーまたはグループが割り当てられている場合、スコープ指定ロールは削除できません。最初にロールの割り当てを削除してから、スコープ指定ロールを削除します。
ユーザーの追加および削除
スコープ指定ロールへのユーザーの追加および削除は 標準ロールの追加と削除 と同じプロセスに従います。
3.5.8.2. 管理コンソールからのスコープ指定ロールの設定 リンクのコピーリンクがクリップボードにコピーされました!
この設定を実行できるのは、SuperUser または Administrator ロールのユーザーのみです。
管理コンソールのスコープ指定ロール設定は、以下の手順で確認できます。
- 管理コンソールにログインします。
- Access Control タブをクリックします。
- Roles をクリックして、スコープ指定されたロールを含め、すべてのロールを表示します。
以下の手順では、スコープ指定ロールの設定タスクを実行する方法について説明します。
新しいスコープ指定されたロールの追加
- 管理コンソールにログインします。
- Access Control タブをクリックします。
- Roles を選択し、Add (+) ボタンをクリックします。
- Host Scoped Role または Server Group Scoped Role を選択します。
以下の詳細を指定します。
- Name: スコープ指定の新しいロールの一意の名前。
- Base Role: このロールがパーミッションを元にするロール。
- Hosts または Server Groups。ロールが制限されているホストまたはサーバーグループのリスト。追加中のスコープ指定ロールの種類による。複数のエントリーを選択できます。
-
Include All: このロールがすべてのユーザーを自動的に含めるかどうか。デフォルトは
OFFです。
- Add をクリックして新規ロールを作成します。
スコープ指定されたロールの編集
- 管理コンソールにログインします。
- Access Control タブをクリックします。
- 左側の Roles メニューをクリックします。
- 編集するスコープ指定ロールをクリックし、Edit をクリックします。
- 変更する詳細を更新して、Save ボタンをクリックします。
スコープ指定されたロールメンバーの表示
- 管理コンソールにログインします。
- Access Control タブをクリックします。
- 左側の Roles メニューをクリックします。
- 対象のスコープ指定ロールをクリックして、包含メンバーおよび除外メンバーを表示します。
スコープ指定ロールの削除
- 管理コンソールにログインします。
- Access Control タブをクリックします。
- 左側の Roles メニューをクリックします。
- 対象のスコープ対象のロールをクリックし、ドロップダウンから Remove をクリックします。
- Yes をクリックし、その割り当てをすべて削除します。
ユーザーの追加および削除
スコープ指定ロールへのユーザーの追加および削除は標準ロールの追加と削除と同じプロセスに従います。ユーザーのスコープ指定ロールを更新するには、以下を実行します。
- 管理コンソールにログインします。
- Access Control タブをクリックします。
- 左側の Roles メニューをクリックし、対象のスコープ指定ロールをクリックします。
- メンバーを含めるにはプラス (+) ボタンを選択し、メンバーを除外するにはマイナス (-) ボタンを選択します。
3.5.9. 制約の設定 リンクのコピーリンクがクリップボードにコピーされました!
3.5.9.1. 機密性制約の設定 リンクのコピーリンクがクリップボードにコピーされました!
各機密性制約は、機密であるとみなされるリソースのセットを定義します。通常、機密リソースとは、パスワードなどの秘密のリソースや、ネットワーキング、JVM 設定、システムプロパティーなどのサーバーに重大な影響を与えるリソースのことです。アクセス制御システム自体も機密であると見なされます。リソースの機密性は、どのロールが特定のリソースの読み取り、書き込み、またはアドレス指定できるかを制限します。
機密性制約設定は /core-service=management/access=authorization/constraint=sensitivity-classification にあります。
管理モデル内で、それぞれの機密性制約は分類として識別されます。分類はタイプにグループ化されます。各分類には apply-to 要素があります。これは分類設定が適用されるパスパターンのリストです。
機密性制約を設定するには、write-attribute 操作を使用して configured-requires-read、configured-requires-write、configured-requires-addressable 属性を設定します。操作のタイプを機密に設定するには、属性の値を true に設定します。機密にしない場合は値を false に設定します。デフォルトでは、これらの属性は設定されず、default-requires-read、default-requires-write、default-requires-addressable の値が使用されます。設定した属性が適用されると、デフォルトではなく、その値が使用されます。デフォルト値は変更できません。
例: 読み取りシステムプロパティーを機密操作にする
/core-service=management/access=authorization/constraint=sensitivity-classification/type=core/classification=system-property:write-attribute(name=configured-requires-read,value=true)
/core-service=management/access=authorization/constraint=sensitivity-classification/type=core/classification=system-property:write-attribute(name=configured-requires-read,value=true)
例: 結果
/core-service=management/access=authorization/constraint=sensitivity-classification/type=core/classification=system-property:read-resource
/core-service=management/access=authorization/constraint=sensitivity-classification/type=core/classification=system-property:read-resource
ロールと、実行できる各操作は、属性の設定によって異なります。これは、以下の表で説明されています。
| 値 | requires-read | requires-write | requires-addressable |
|---|---|---|---|
| true |
読み取りは機密です。 |
書き込みは機密です。 |
アドレス指定は機密です。 |
| false | 読み取りは機密ではありません。すべての管理ユーザーが読み取り可能です。 |
書き込みは機密ではありません。 | アドレス指定は機密ではありません。すべての管理ユーザーがアドレス指定できます。 |
3.5.9.2. 機密性制約のリスト リンクのコピーリンクがクリップボードにコピーされました!
以下の管理 CLI コマンドを使用すると、利用可能な機密性制約のリストを JBoss EAP 管理モデルから直接確認できます。
/core-service=management/access=authorization/constraint=sensitivity-classification:read-resource(include-runtime=true,recursive=true)
/core-service=management/access=authorization/constraint=sensitivity-classification:read-resource(include-runtime=true,recursive=true)
3.5.9.3. アプリケーションリソース制約の設定 リンクのコピーリンクがクリップボードにコピーされました!
各アプリケーションリソース制約は、通常はアプリケーションとサービスのデプロイメントに関連するリソース、属性、および操作のセットを定義します。アプリケーションリソース制約が有効化されると、Deployer ロールの管理ユーザーに、適用されるリソースへのアクセスが付与されます。
アプリケーション制約設定は /core-service=management/access=authorization/constraint=application-classification/ にあります。
各アプリケーションリソース制約は分類として識別されます。分類はタイプにグループ化されます。各分類には apply-to 要素があります。これは分類設定が適用されるパスパターンのリストです。
デフォルトでは、有効になっている唯一のアプリケーションリソースの分類はコアです。コアには、デプロイメント、デプロイメントオーバーレイ、およびデプロイメント操作が含まれます。
アプリケーションリソースを有効にするには、write-attribute 操作を使用して、分類の configured-application 属性を true に設定します。アプリケーションリソースを無効にするには、この属性を false に設定します。デフォルトでは、これらの属性は設定されず、default-application 属性の値が使用されます。デフォルト値は変更できません。
例: logger-profile アプリケーションリソースの分類の有効化
/core-service=management/access=authorization/constraint=application-classification/type=logging/classification=logging-profile:write-attribute(name=configured-application,value=true)
/core-service=management/access=authorization/constraint=application-classification/type=logging/classification=logging-profile:write-attribute(name=configured-application,value=true)
例: 結果
/core-service=management/access=authorization/constraint=application-classification/type=logging/classification=logging-profile:read-resource
/core-service=management/access=authorization/constraint=application-classification/type=logging/classification=logging-profile:read-resource
アプリケーションリソース制約は、その設定に一致するすべてのリソースに適用されます。たとえば、Deployer ユーザーに、あるデータソースリソースへのアクセスを許可して、同じデータベースの別のリソースへのアクセスを拒否することはできません。このレベルの分離が必要な場合は、異なるサーバーグループでリソースを設定し、グループごとに異なるスコープ指定の Deployer ロールを作成することが推奨されます。
3.5.9.4. アプリケーションリソース制約のリスト表示 リンクのコピーリンクがクリップボードにコピーされました!
以下の管理 CLI コマンドを使用すると、利用可能なアプリケーションリソースのリストを JBoss EAP 管理モデルから直接確認できます。
/core-service=management/access=authorization/constraint=application-classification:read-resource(include-runtime=true,recursive=true)
/core-service=management/access=authorization/constraint=application-classification:read-resource(include-runtime=true,recursive=true)
3.5.9.5. Vault 式制約の設定 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、vault 式の読み書きは機密操作です。Vault 式制約を設定すると、これらの操作のいずれかまたは両方を非機密に設定できます。この制約を変更すると、より多くのロールで vault 式の読み書きが可能になります。
Vault 式制約は /core-service=management/access=authorization/constraint=vault-expression にあります。
Vault 式制約を設定するには、write-attribute 操作を使用して configured-requires-write と configured-requires-read の値を true または false に設定します。デフォルトではそれらは設定されず、default-requires-read と default-requires-write の値が使用されます。デフォルト値は変更できません。
例: Vault 式への書き込みのを非機密操作にする
/core-service=management/access=authorization/constraint=vault-expression:write-attribute(name=configured-requires-write,value=false)
/core-service=management/access=authorization/constraint=vault-expression:write-attribute(name=configured-requires-write,value=false)
例: 結果
/core-service=management/access=authorization/constraint=vault-expression:read-resource
/core-service=management/access=authorization/constraint=vault-expression:read-resource
ロールと、読み書きが可能な関連の vault 式は、属性の設定に依存します。これは、以下の表で説明されています。
| 値 | requires-read | requires-write |
|---|---|---|
| true |
読み取り操作は機密です。 |
書き込み操作は機密です。 |
| false | 読み取り操作は機密ではありません。すべての管理ユーザーは読み取りが可能です。 |
書き込み操作は機密ではありません。 |