4.4. RBAC を使用した管理インターフェースのセキュア化
ここでは、RBAC と elytron
サブシステムのアイデンティティーストアを使用して JBoss EAP 管理インターフェースをセキュアにする方法を説明します。
4.4.1. Security
JBoss EAP では、管理インターフェースで RBAC を使用できます。RBAC の概念については、RBAC の説明を参照してください。この例では、exampleRealm
というセキュリティーレルムを使用します。ロールデコーダー、セキュリティードメイン、認証ファクトリーなどの残りのセキュリティー設定は、新しいアイデンティティーストアを用いた管理インターフェースおよびアプリケーションのセキュア化 と同じになります。RBAC は、管理インターフェースに対して provider
属性を rbac
に設定し、希望のユーザーとロールで exampleRealm
を更新すると有効になります。
4.4.2. 仕組み
この例では、以下のユーザーが既存のセキュリティーレルムに追加されています。
ユーザー名 | パスワード |
---|---|
Suzy | Testing123! |
Tim | Testing123! |
Emily | Testing123! |
Zach | Testing123! |
Natalie | Testing123! |
グループメンバーシップを基に、ユーザーは以下の RBAC ロールにマップされています。
ユーザー名 | RBAC ロール |
---|---|
Suzy | SuperUser |
Tim | Administrator |
Emily | Maintainer |
Zach | Deployer |
Natalie | Monitor |
起動時、JBoss EAP はコアサービスと、セキュリティーおよび RBAC 設定をロードする elytron
サブシステムをロードします。RBAC が有効になっていない場合、exampleRealm
のユーザーはすべて SuperUser
として考慮され、アクセスが無制限になります。RBAC は有効になっているため、各ユーザーは持っているロールに応じて制限されるようになります。上記の表のとおり、Suzy、Tim、Emily Zach および Natalie は、異なるロールを持っています。たとえば、Suzy と Tim のみがアクセス制御情報の読み取りと編集を行えます。Suzy、Tim、および Emily はランタイム状態とその他の永続設定の情報を編集できます。Zach
もランタイム状態とその他の永続設定の情報を編集できますが、アプリケーションリソース関係のみに限定されます。Suzy、Tim、Emily、Zack、および Natalie は設定および状態情報を読み取りできますが、Natalie は何も更新できません。各ロールの詳細とJBoss EAP による RBAC の処理方法については、「ロールベースのアクセス制御」と「管理インターフェースへの RBAC の追加」を参照してください。