Red Hat Training

A Red Hat training course is available for Red Hat JBoss Enterprise Application Platform

第8章 承認モジュール

以下のモジュールは、承認サービスを提供します。

codeクラス

DenyAll

org.jboss.security.authorization.modules.AllDenyAuthorizationModule

PermitAll

org.jboss.security.authorization.modules.AllPermitAuthorizationModule

Delegating

org.jboss.security.authorization.modules.DelegatingAuthorizationModule

web

org.jboss.security.authorization.modules.web.WebAuthorizationModule

JACC

org.jboss.security.authorization.modules.JACCAuthorizationModule

XACML

org.jboss.security.authorization.modules.XACMLAuthorizationModule

AbstractAuthorizationModule
これは、上書きが必要なベース承認モジュールで、他の認可モジュールへ委任する機能を提供します。このベース承認モジュールは、オーバーライドクラスに delegateMap プロパティーも提供します。これにより、特定コンポーネントに対して委任モジュールを宣言できます。これにより、webejb など、各レイヤーの承認を処理するためのより特殊なクラスが有効になります。これは、ユーザーの承認に使用される情報がアクセスされるリソース間で異なる可能性があるためです。たとえば、承認モジュールはパーミッションに基づくものであっても、web および ejb リソースの異なるパーミッションタイプを持つことができます。デフォルトでは、承認モジュールは可能なすべてのリソースおよびパーミッションタイプに対応するよう強制されますが、delegateMap オプションを設定すると、モジュールは異なるリソースタイプの特定のクラスに委譲できます。delegateMap オプションは、コンマ区切りのモジュール一覧を取ります。各モジュールのプレフィックスは、関連するコンポーネントによって指定されます.たとえば、<module-option name="delegateMap">web=xxx.yyy.MyWebDelegate,ejb=xxx.yyy.MyEJBDelegate</module-option> のようになります。
重要

delegateMap オプションを設定する場合、すべての委譲は authorize (Resource) メソッドを実装し、提供された承認モジュールと同じように invokeDelegate (Resource) メソッドを呼び出しる必要があります。これを行わないと、委譲は呼び出されません。

AllDenyAuthorizationModule
これは、承認要求を常に拒否する簡単な承認モジュールです。設定オプションは利用できません。
AllPermitAuthorizationModule
これは、常に承認要求を許可する簡単な承認モジュールです。設定オプションは利用できません。
DelegatingAuthorizationModule
これは、設定された委譲に決定を委譲するデフォルトの認可モジュールです。このモジュールは、delegateMap オプションもサポートします。
WebAuthorizationModule
デフォルトの Tomcat 承認ロジック (permit all) を持つデフォルトの Web 認証モジュールです。
JACCAuthorizationModule
このモジュールは、Web コンテナー承認要求の場合は WebJACCPolicyModuleDelegate、EJB コンテナー要求の場合は EJBJACCPolicyModuleDelegate を使用して JACC セマンティクスを有効にします。このモジュールは、delegateMap オプションもサポートします。
XACMLAuthorizationModule
このモジュールは、Web コンテナーおよび EJB コンテナー、WebXACMLPolicyModuleDelegate および EJBXACMLPolicyModuleDelegate の委譲を使用して XACML 承認を有効にします。登録したポリシーに基づいて PDP オブジェクトを作成し、それに対して web または EJB リクエストを評価します。このモジュールは、delegateMap オプションもサポートします。