この章の内容は次のとおりです。
認可とは、ユーザーとリソースとのやり取りを限定して、整合性、機密性、および可用性を確実にするプロセスのことです。すなわち、認可では、ユーザーの身元などの情報に基づいてリソースへのアクセスを制御します。認可プロバイダを構成する必要があるのは、新しいセキュリティ・レルムを作成するときだけです。
デフォルトでは、新しく作成されるドメイン内のセキュリティ・レルムにはXACML認可プロバイダが含まれています。XACML認可プロバイダは、XACML (eXtensible Access Control Markup Language)を使用します。XACML認可プロバイダの使用方法については、『Oracle WebLogic Serverロールおよびポリシーによるリソースの保護』のXACMLドキュメントによるWebLogicリソースの保護に関する項を参照してください。WebLogic Serverには、独自のポリシー言語を使用するWebLogic認可プロバイダも用意されています。このプロバイダは「DefaultAuthorizer(デフォルト認可プロバイダ)」と呼ばれますが、デフォルトの認可プロバイダではなくなりました。
アプリケーションとモジュールのデプロイメント時にセキュリティ・ポリシーに対する並列変更を認可プロバイダがサポートする方法については、「デプロイメント時のセキュリティ・ポリシーとロール変更の同期の有効化」を参照してください。
Oracle WebLogic Server管理コンソール・オンライン・ヘルプの認可プロバイダの構成に関する項を参照してください。
注意:
WebLogic認可プロバイダでは、ロール、述部、およびそのルックアップするリソース・データをキャッシュすることによってパフォーマンスを向上します。こうしたキャッシュの構成については、『Oracle WebLogic Serverロールおよびポリシーによるリソースの保護』の「ベスト・プラクティス: WebLogicプロバイダの使用時の資格のキャッシングの構成」を参照してください。XACML認可では独自のキャッシュを使用しますが、このキャッシュは構成できません。
セキュリティ・レルムに複数の認可プロバイダが構成される場合、特定のリソースに「アクセスできるか」という質問に対して、それぞれが異なる回答を返す可能性があります。この回答は、PERMIT
、DENY
、ABSTAIN
のいずれかです。複数の認可プロバイダの回答が一致しない場合にどうするかを決定するのが、裁決プロバイダの主な役割です。裁決プロバイダは、各認可プロバイダの回答に重みを割り当てることによって認可の競合を解決し、最終決定を返します。
各セキュリティ・レルムでは1つの採決プロバイダが必要であり、アクティブな採決プロバイダは1つだけでなければなりません。デフォルトでは、WebLogicセキュリティ・レルムにはWebLogic裁決プロバイダが構成されます。セキュリティ・レルムでは、WebLogic裁決プロバイダまたはカスタム裁決プロバイダのいずれかを使用できます。
注意:
WebLogic Server管理コンソールでは、WebLogic裁決プロバイダを「デフォルト裁決プロバイダ」と呼びます。
WebLogic裁決プロバイダの構成オプションの大部分は、デフォルトで定義されています。しかし、「完全一致の許可が必要」オプションを設定することによって、WebLogic裁決プロバイダが、構成された認可プロバイダからのPERMIT
およびABSTAIN
票をどのように処理するかを指定できます。
このオプションを有効(デフォルト)にした場合、裁決プロバイダがtrue
を投じるには、すべての認可プロバイダがPERMIT
票を投じる必要があります。
このオプションを無効にした場合、ABSTAIN
票はPERMIT
票としてカウントされます。
ロール・マッピング・プロバイダは、特定のリソースのサブジェクトに付与されるロール・セットを計算します。ロール・マッピング・プロバイダは、このロール情報を認可プロバイダに提供します。これによって、認可プロバイダはWebLogicリソースに対して「アクセスできるか」という質問に答えることができます。デフォルトでは、WebLogicセキュリティ・レルムにはXACMLロール・マッピング・プロバイダが構成されます。XACMLロール・マッピング・プロバイダは、XACML (eXtensible Access Control Markup Language)を使用します。XACMLロール・マッピング・プロバイダの使用方法については、『Oracle WebLogic Serverロールおよびポリシーによるリソースの保護』のXACMLドキュメントによるWebLogicリソースの保護に関する項を参照してください。
WebLogic Serverには、独自のポリシー言語を使用するWebLogicロール・マッピング・プロバイダも用意されています。このプロバイダは「DefaultRoleMapper (デフォルト・ロール・マッピング・プロバイダ)」と呼ばれますが、新しく作成されるセキュリティ・レルムではデフォルトのロール・マッピング・プロバイダではなくなりました。セキュリティ・レルムでカスタム・ロール・マッピング・プロバイダを使用することもできます。
デフォルトでは、XACMLロール・マッピング・プロバイダの構成オプションの大部分が定義されています。しかし、「ロール・デプロイメントを有効化」オプションを設定して、このロール・マッピング・プロバイダがWebアプリケーションおよびEJB用のデプロイメント記述子の情報をセキュリティ・レルムにインポートするかどうかを指定できます。デフォルトでは、この設定は有効になっています。
「ロール・デプロイメントを有効化」をサポートするには、ロール・マッピング・プロバイダにDeployableRoleProvider
SSPIを実装する必要があります。ロールは、XACMLロール・マッピング・プロバイダによって組込みLDAPサーバーに格納されます。
アプリケーションとモジュールのデプロイメント時にロールに対する並列変更をロール・マッピング・プロバイダがサポートする方法については、「デプロイメント時のセキュリティ・ポリシーとロール変更の同期の有効化」を参照してください。
ロール・マッピング・プロバイダの使用、開発、および構成については、以下を参照してください。
『Oracle WebLogic Serverロールおよびポリシーによるリソースの保護』のユーザー、グループ、セキュリティ・ロールに関する項
『Oracle WebLogic Serverセキュリティ・プロバイダの開発』のロール・マッピング・プロバイダに関する項
Oracle WebLogic Server管理コンソール・オンライン・ヘルプのロール・マッピング・プロバイダの構成に関する項
注意:
WebLogicロール・マッピング・プロバイダでは、ロール、述部、およびそのルックアップするリソース・データをキャッシュすることによってパフォーマンスが向上します。こうしたキャッシュの構成については、『Oracle WebLogic Serverロールおよびポリシーによるリソースの保護』の「ベスト・プラクティス: WebLogicプロバイダの使用時の資格のキャッシングの構成」を参照してください。XACMLロール・マッピング・プロバイダでは独自のキャッシュを使用しますが、このキャッシュは構成できません。