ヘッダーをスキップ
Oracle® Fusion Middleware Authorization Policy Manager管理者ガイド
11g リリース1(11.1.1)
B61413-01
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

2 OPSS認可モデル

この章では、OPSS認可モデルおよびこのモデルで使用されるセキュリティ・オブジェクトについて説明します。これらのオブジェクトは、セキュリティ管理者がOracle Authorization Policy Managerを使用して管理できます。次の各項でこれらのオブジェクトについて説明します。

この章で定義している用語は、Authorization Policy Managerのユーザー・インタフェースおよびこのガイド全体で使用されています。

2.1 基本的なセキュリティ・アーティファクト

アプリケーション・ストライプとは、アプリケーション・ポリシーを格納するドメイン・ポリシー・ストアの論理的なサブセットです。特に指定しない限り、アプリケーション・ストライプ名はアプリケーションの表示名から導出されます。たとえば、アプリケーションの表示名がappName(version)の場合、アプリケーション・ストライプ名はappName#versとなります。1つのアプリケーション・ストライプを複数のアプリケーション間で共有できます。

Authorization Policy Managerを使用してアクセス可能なセキュリティ・アーティファクトそれぞれを区別する第1の要素は、それがグローバルなアーティファクトか、あるいはアプリケーション固有のアーティファクトであるかです。

グローバルなアーティファクトには、ユーザー、外部ロールおよびシステム・ポリシーがあります。これらはすべてのアプリケーション・ストライプに適用されます。システム・ポリシーはドメイン・ポリシー・ストアに格納されていますが、このリリースのAuthorization Policy Managerではシステム・ポリシーの表示や管理はサポートされていません。システム・ポリシーの管理は、Fusion Middleware Controlを使用して行います(『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照)。

アプリケーション固有のアーティファクトは、リソース・カタログ、アプリケーション・ポリシー、アプリケーション・ロールおよびロール・カテゴリがあります。これらはアプリケーション・ストライプのみに適用されます。

2.2 外部ロール

外部ロールは、ユーザーおよびその他のグループの集まりです。外部ロールという用語は、エンタープライズ・ロールまたはエンタープライズ・グループと同義で使用されることもあり、通常はアイデンティティ・ストア内のLDAPグループとして実装されます。外部ロールは、他の種類のロールと同じく階層構造にすることができます。

ロール階層および権限継承の詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。


注意:

外部ロール(およびユーザー)は、Authorization Policy Manager内部では表示のみ可能です。管理は通常、Oracle Identity Managerなどの別のツールを使用して行います。詳細は、Oracle Fusion Middleware Oracle Identity Manager管理者ガイドを参照してください。

2.3 ポリシー・モデル

図2-1は、アプリケーション・ポリシーの論理的なモデルを示しています。この図には、(資格内に)リソース・タイプが示されていません。ユーザーおよび外部ロールをプリンシパルとして使用できます。また、外部ロールは階層構造にできます。

図2-1 アプリケーション・ポリシーの論理モデル

図2-1については周囲のテキストで説明しています。

次の各項で、アプリケーション・ストライプのコンポーネントおよび詳細について説明します。

2.3.1 アプリケーション・ロール

アプリケーション・ロールは、ユーザー、グループおよびその他のアプリケーション・ロールの集まりであり、階層構造にできます。アプリケーション・ロールはアプリケーション・ポリシーによって定義されます。JavaEEコンテナに認識されるとは限りません。アプリケーション・ロールは、外部ロールに多対多でマッピングできます。たとえば、(アイデンティティ・ストアに格納されている)外部グループemployeeを、(あるストライプ内の)アプリケーション・ロールhelpdesk service requestにマッピングして、さらに(別のストライプ内の)アプリケーション・ロールself service HRにマッピングできます。

2.3.2 プリンシパル

プリンシパルとは、ポリシー内の認可が付与されるアイデンティティです。プリンシパルになるのはユーザー、外部ロールまたはアプリケーション・ロールですが、最も多いのはアプリケーション・ロールです。

2.3.3 リソース・カタログ

リソース・カタログは、リソース・タイプ、リソース、アクションおよび資格で構成されます。

2.3.3.1 リソース・タイプ

リソース・タイプは、保護されたアーティファクトのタイプを表します。リソース・タイプの例として、UIアーティファクト(ADFタスクフロー、ページ、ボタン、フィールド、Webサービス、レポート、URL、スケジュールされたジョブなど)があります。基本的に、リソース・タイプはリソースを作成するためのテンプレートです。

リソース・タイプは、1つのJavaクラス(マッチャー・クラス)と関連付けられます。このクラスは、そのリソース・タイプのインスタンスで起動できるアクションを説明するもので、クラスjava.security.Permissionを実装する必要があります。たとえば、リソース・タイプがADFタスクフローの場合、権限クラスによりタスクフローの表示またはカスタマイズが許可されます。

リソース・タイプの指定では、次の点に注意してください。

  • 名前は必須であり、大/小文字が区別されます。

  • マッチャー・クラス名は必須であり、大/小文字が区別されます。通常、マッチャー・クラスは、提供されているOPSS ResoucePermissionクラスですが、カスタム・クラスにすることもできます。同じマッチャー・クラスに2つの異なるリソース・タイプを指定することはできません(クラスResourcePermissionの場合を除く)。このクラスの詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。

  • 説明文字列はオプションであり、大/小文字が区別されます。

  • 表示名はオプションであり、大/小文字が区別されます。表示名はOracle Authorization Policy Managerに表示され、セキュリティ管理者にアーティファクトの特定に役立つ追加情報を提供するため、分かりやすい表示名を指定することをお薦めします。

  • アクションのリストはオプションであり、大/小文字が区別されます。空にすることもできます。アクション・リストが空の場合、そのリソース・タイプのインスタンスに対するアクションは外部で決定され、Authorization Policy Managerには不透明になります。すなわち、これらのアクションはこのリソース・タイプには関連していません(この場合、リソースは名前付きリソースとして処理されます)。

リソース・タイプの作成方法の詳細は、5.1.2項「アプリケーション・リソース・タイプの管理」を参照してください。

アクションはリソース・タイプと関連付けられ、リソースに対して許可される操作を定義します。リソース・タイプに関連付けられたマッチャー・クラスは通常、そのリソース・タイプのアクションのリストを説明します。リソースに対するアクションの例を次に示します。

  • URLに対する取得またはポスト。

  • ファイルに対する読取り、書込み、コピー、編集または削除。

  • 当座預金口座に対する預入れ、引出し、残高照会、履歴照会、預金の振込みまたは振替え。

2.3.3.2 リソース

リソースまたはリソース・インスタンスは、具体的なリソースを表すリソース・タイプのインスタンスであり、ポリシー(URL、EJB、JSPなど)により保護できるアプリケーション・リソースを定義します。アプリケーションは実行時にリソース名を渡して権限の確認を行い、プリンシパルが認可されているかどうかを判断します。

リソースには、リソース・タイプを関連付ける必要がありますが、資格と関連付ける必要はありません。リソースの指定では、様々な文字列の大/小文字に関する次の点に注意してください。

  • 名前は必須であり、大/小文字が区別されます。アプリケーションは実行時にこの名前を渡して権限の確認を行い、ユーザーが認可されているかどうかを判断します。

  • 説明はオプションであり、大/小文字が区別されます。

  • 表示名は必須であり、大/小文字が区別されます。表示名はOracle Authorization Policy Managerに表示され、セキュリティ管理者にアーティファクトの特定に役立つ追加情報を提供するため、分かりやすい表示名を指定することをお薦めします。

リソースの作成方法の詳細は、5.1.3項「アプリケーション・リソースの管理」を参照してください。

2.3.3.3 権限および資格

権限は、クラス、リソース、および各リソースのリソース・タイプで許可されるアクションのサブセットを集約したものです。

資格または権限セットは、タスクの実行に必要なリソースおよび権限の小さなセットを表します。つまり、ビジネス機能を実行するために必要な関連するリソース(タイプが異なる場合もある)をひとまとめにしたものです。資格は、複数のプリンシパルに付与できる再利用可能な権限の集まりです。

たとえば、購買依頼管理という資格は、次のリソースをひとまとめにしたものです。

Resource Type: ADF Taskflow
Resource: PO Summary
Action: view

Resource Type: ADF Taskflow
Resource: PO Details
Action: view

Resource Type: ADF Taskflow
Resource: Supplier Details
Action: view

Resource Type: Web Service
Resource: SpendingLimitCheckWS
Action: invoke

Resource Type: Workflow
Resource: POApproval
Action: submit

資格の指定では、様々な文字列の大/小文字に関する次の点に注意してください。

  • 名前は必須であり、大/小文字が区別されます。

  • 説明はオプションであり、大/小文字が区別されます。

  • 表示名は必須であり、大/小文字が区別されます。表示名はOracle Authorization Policy Managerに表示され、セキュリティ管理者にアーティファクトの特定に役立つ追加情報を提供するため、分かりやすい表示名を指定することをお薦めします。

資格の作成方法の詳細は、5.1.4項「アプリケーション資格の管理」を参照してください。

2.3.4 アプリケーション・ポリシー

アプリケーション・ポリシーは、アプリケーション内でエンティティ(権限受領者、プリンシパルまたはコード・ソース)に付与される権限セット(Webページの閲覧やレポートの変更など)を指定する機能ポリシーです。つまり、アプリケーション・ポリシーはアプリケーションで誰が何を実行できるかを指定するものです。

アプリケーション・ポリシーの特徴を次に示します。

  • プリンシパルを権限受領者として使用します。少なくとも1つのプリンシパルを割り当てる必要があります(このリリースのOracle Authorization Policy Managerでは、コード・ソースは権限受領者として使用できません)。

  • 1つ以上の権限または資格を使用できますが、その両方は使用できません。資格を使用するポリシーは資格に基づくポリシーと呼ばれ、1つ以上の権限を使用するポリシーはリソースに基づくポリシーと呼ばれます。

アプリケーション・ポリシー・モデルは、図2-1に示されています。

Authorization Policy Managerには豊富な機能を備えたユーザー・インタフェースが用意されており、セキュリティ管理者はこれを使用してアプリケーション・ポリシーの問合せ、プロビジョニングおよび管理を行うことができます。詳細は、第4章「セキュリティ・アーティファクトの問合せ」および第5章「セキュリティ・アーティファクトの管理」を参照してください。


注意:

資格に基づくポリシーは、ビジネス機能と密接に関連しています。ビジネス機能でリソースの集まりの保護を考慮する場合は、資格に基づくポリシーを使用することをお薦めします。資格は、1つ以上の付与で使用できます。

2.3.5 ロール・カテゴリ

ロール・カテゴリは、アプリケーション・ロールの集まりです。ロール・カテゴリを使用すると、管理者はアプリケーション・ロールを任意のフラット・コレクションに編成できます。ロール・カテゴリは、実行時のポリシー評価では使用されません。

ロール・カテゴリは、ロール階層とは無関係です(ロール階層と混同しないでください)。ロール階層はアプリケーションと外部ロールの両方に適用されます。ロール階層および権限階層の詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。

ロール・カテゴリ名では大/小文字が区別されます。ロール・カテゴリの作成方法の詳細は、5.1.6項「アプリケーション・ロール・カテゴリの管理」を参照してください。