6.5. Elytron の ejb サブシステムとの統合
JBoss EAP 7.1 より、デプロイメントをマッピングし、それらのセキュリティーが elytron
サブシステムによって処理されるようになりました。デプロイメントがマップされたセキュリティードメインを参照する場合、そのセキュリティーは Elytron によって処理されます。そうでない場合には、そのセキュリティーはレガシーセキュリティーサブシステムによって処理されます。このマッピングは ejb
サブシステムで定義されます。
ejb
サブシステム内で、セキュリティードメイン名から、ディプロイメント内で参照されるものとして、参照される Elytron セキュリティードメインにマッピングが作成されます。マッピングされたセキュリティードメイン名がデプロイメント内の bean に対して設定されている場合は、セキュリティーが Elytron によって処理される必要があることを示します。既存の Jakarta Enterprise Beans セキュリティーインターセプターの代わりに新しい Jakarta Enterprise Beans セキュリティーインターセプターが設定されます。
新しい Jakarta Enterprise Beans セキュリティーインターセプターは、呼び出しに関連付けられた Elytron SecurityDomain
を利用して現在の SecurityIdentity
を取得し、以下のタスクを実行します。
-
run-as
プリンシパルを確立します。 -
run-as
プリンシパルの追加ロールを作成します 。 -
run-as
ロールを作成します。 - 承認の決定を行います。
JBoss EAP 7.1 では、ejb
サブシステム application-security-domains
に新しい管理リソースが導入されました。application-security-domains
要素には、Elytron セキュリティードメインにマップする必要のあるアプリケーションセキュリティードメインが含まれます。
属性 | 説明 |
---|---|
| この属性は、デプロイメントで指定されるセキュリティードメインの名前を参照します。 |
| この属性は、使用される必要がある Elytron セキュリティードメインへの参照です。 |
| この属性は、Jakarta Authorization を使用した承認を有効にします。 |
| これは、現在 ASD を参照しているすべてのデプロイメントをリスト表示するランタイム属性です。 |
|
この属性は、着信
このパラメーターはオプションであり、デフォルト値は 'true' です。 |
管理コンソールまたは管理 CLI を使用して、ejb
サブシステムで application-security-domain
を設定できます。詳細は、以下のトピックを参照してください。
6.5.1. 管理コンソールを使用したアプリケーションセキュリティードメインの設定
- 管理コンソールにアクセスします。詳細は、JBoss EAP設定ガイドの 管理コンソール を参照してください。
-
Configuration
Subsystems EJB の順に移動し、View をクリックします。 - Security Domain タブを選択し、必要に応じてアプリケーションセキュリティードメインを設定します。
6.5.2. 管理 CLI を使用したアプリケーションセキュリティードメインの設定
以下の例では、MyAppSecurity
はデプロイメントで参照されるセキュリティードメインであり、ApplicationDomain
は elytron
サブシステムに設定された Elytron セキュリティードメインです。
/subsystem=ejb3/application-security-domain=MyAppSecurity:add(security-domain=ApplicationDomain)
以下の XML は、このコマンドの結果としてサーバー設定ファイルの ejb
サブシステムに追加されます。
<application-security-domains> <application-security-domain name="MyAppSecurity" security-domain="ApplicationDomain"/> </application-security-domains>
Elytron を使用してセキュリティーを処理する Jakarta Enterprise Beans の単純な作業例は、JBoss EAP に同梱される ejb-security
クイックスタートを参照してください。