ヘッダーをスキップ
Oracle® Fusion Middleware Oracle Entitlements Server管理者ガイド
11gリリース2 (11.1.2.2)
B71695-05
  目次へ移動
目次
索引へ移動
索引

前
 
次
 

9 環境固有のリソースの保護

この章では、特定のセキュリティ・モジュールを使用してリソースを保護する方法について説明します。この章には次の項目があります。

9.1 セキュリティ・モジュール・タイプの選択

Oracle Entitlements Server管理者は、保護されるリソースのタイプに基づいてセキュリティ・モジュール・タイプを選択します。セキュリティ・モジュール・タイプは、OESクライアントのSMConfigツールを使用してセキュリティ・モジュールをインスタンス化する際に定義します(第8章「セキュリティ・モジュールの構成の管理」を参照)。


注意:

OESクライアントのインストール手順は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』を参照してください。

SMConfigツールを使用してセキュリティ・モジュールをインスタンス化する際、セキュリティ・モジュール・タイプ、構成IDおよび適切なコンテナへのパスなどのパラメータを定義します。表9-2に、インスタンス化可能なセキュリティ・モジュール・タイプをリストします。(SMType属性値はセキュリティ・モジュール列のカッコ内に定義されています。)

表9-1に記載されているセキュリティ・モジュール・タイプでは、環境に固有のリソースは保護されません。これらは、認可を要求するJavaコールを受信するポリシー決定ポイント(PDP)です。セキュリティ・モジュールは単純に、アプリケーションによりコールされる認可APIを提供します。

表9-1 一般的な保護セキュリティ・モジュール・タイプ

セキュリティ・モジュール 目的 プロキシ・モード コンテナ・サポート

Java (java)

認可を要求するJavaコールを受信するポリシー決定ポイント(PDP)

サポート

Java Standard Edition (JSE)アプリケーションおよび複雑な統合で使用されます。

WebSphere (was)

アプリケーションから認可リクエストを直接受信するJavaセキュリティ・モジュール

サポート

WebSphere Application Server

Webサービス(ws)

Webサービス・コールを受信するマルチプロトコル・セキュリティ・モジュール。XACMLゲートウェイまたはSOAPを使用してWebサービス・セキュリティ・モジュールと通信するように、プロキシ・モードの他のセキュリティ・モジュール(Java、WLS)を構成します。

未サポート

JSEスタンドアロン・プロセスとして、またはWebLogic Serverコンテナ上で実行されるWebサービスとして、サポートされます。プロキシ・モードの他のセキュリティ・モジュールにより使用可能です。Webサービス・リクエストを作成可能な場合またはアプリケーションが非標準プログラミング言語(Pythonなど)で作成されている場合に使用できます。

RMI (rmi)

Remote Method Invocation (RMI)コールを受信するように強化されたJavaセキュリティ・モジュールであるマルチプロトコル・セキュリティ・モジュール

未サポート

Webサービスの負荷が高い場合にJSEアプリケーションでのみ使用されます。

.NET (dotnet)

C#で記述されたアプリケーションがC#でPEP APIをコールすることによりWebサービス・セキュリティ・モジュールに認可リクエストを送信できるようにします。

プロキシ・モードでのみサポートされます。.NETセキュリティ・モジュールはWebサービス・セキュリティ・モジュールと通信するプロキシとして機能します。

.NETコンテナ

JBoss (jboss)

アプリケーションから認可リクエストを直接受信するJavaセキュリティ・モジュール

サポート

JBoss Application Server

Tomcat (tomcat)

アプリケーションから直接認可リクエストを受信するJavaセキュリティ・モジュール。Oracle Platform Security Servicesの認可/ログイン・モジュールまたはcheckPermissionをサポートしません。

サポート

Apache Tomcatアプリケーション・サーバー


表9-2に記載されているセキュリティ・モジュールは、アプリケーションから直接受信する認可コールを処理する機能以外に、それらがデプロイされている環境の固有のリソースを保護する機能はありません。

表9-2 環境固有のセキュリティ・モジュール・タイプ

セキュリティ・モジュール 目的 プロキシ・モード コンテナ・サポート

Sharepoint (moss)

コンテンツに対するSharepointリクエストをインターセプトして、Microsoft Sharepoint Serverリソースを保護します。9.2項「Microsoft Office SharePoint Serverのリソースの保護」を参照してください。

プロキシ・モードでのみサポートされます。Sharepointセキュリティ・モジュール自体はWebサービス・セキュリティ・モジュールと通信するプロキシ(C#で記述)として機能します。

.NETコンテナ

WebLogic Server (wls)

Oracle Entitlements Serverセキュリティ・プロバイダが有効化されていて(9.4.1項「WebLogic Serverとの統合」を参照)セキュリティ・モジュールがWebLogic Serverコールを処理可能な場合を除いて、Javaセキュリティ・モジュールと完全に同じ動作を示します。9.4項「WebLogic Serverリソースの保護」を参照してください。

サポート(Oracle Entitlements Serverセキュリティ・プロバイダが有効化されてWebLogic Serverリクエストをインターセプトする場合を除く)

WebLogic Server

Oracle Service Bus (osb)

Oracle Entitlements Serverセキュリティ・プロバイダが有効化されている場合に、Oracle Service Busからの認可リクエストをインターセプトするWebLogicセキュリティ・モジュール。9.3項「Oracle Service Busリソースの保護」を参照してください。

サポート



これらのセキュリティ・モジュールとその構成方法の詳細は、第8章「セキュリティ・モジュールの構成の管理」を参照してください。これらの動作の詳細は、1.3項「Oracle Entitlements Serverのアーキテクチャの概要」第7章「ポリシー決定ポイントのデプロイ」を参照してください。

9.2 Microsoft Office SharePoint Serverのリソースの保護

企業は、Oracle Entitlements Serverを使用して、MOSSポータル環境を管理できます。MOSSとの統合はMOSSセキュリティ・モジュール・プラグインにより実現されます。このプラグインはSharePoint Server内で認可コールをインターセプトし、統合されたWebサービス・セキュリティ・モジュール(PDP)に送信します。PDPは認可決定をMOSSセキュリティ・モジュール・プラグインに返し、決定が実行されます。詳細は、次の各項を参照してください。

9.2.1 SharePointリソースの保護

保護可能なSharePointコンポーネントには、Webサイト、Webページ、Webパーツ、リスト・アイテムおよびナビゲーション・バー・アイテムなどがあります。リソースは、コンポーネントに基づいて異なる方法で保護されます。SharePointリソースは、次のリストに従ってカテゴリ分けされます。

  • アイテムは最小のSharePointコンポーネント(ドキュメント、タスク、連絡先、ページまたは通知など)です。

  • リストは単一タイプのSharePointコンポーネントのコレクションです。ドキュメント・リスト、連絡先リスト、タスク・リストなどを作成できます。

  • フォルダはリスト内に存在し、複数のアイテムとサブフォルダのコンテナとして機能します。

  • サイトはリストのコレクションです。たとえば、SharePointのデフォルトのドキュメント・センター・サイトは、「お知らせ」、「ドキュメント」および「タスク」の3つのリストで構成されています。

  • SharePointサイト・ページ上のナビゲーション・バー・アイテムは、MOSSコンポーネントの操作に使用できます。


注意:

すべてのMOSSリソースのリソース・タイプは1つのみです。この項では、MossResourceTypeという名前を使用します。

次の各項では、詳細を説明します。

9.2.1.1 WebサイトとWebページの保護

MOSS Webサイトは、1つ以上のWebページで構成されます。組織は一般に、社内の1つの部門を示す1つのWebサイトをMOSSで編成します。MOSSに付属のメインWebサイトには、デフォルトのサブ・サイトが存在します。サブ・サイトは、上端または左右のナビゲーション・バー上に、または他のWebページ上でリンクとして、表示されます。これらのすべてのWebサイトに、固有のURLが存在します。

MOSSのWebサイトまたはWebページのURLにより、Oracle Entitlements Serverで作成されるリソース・インスタンスが定義されます。http://Sharepoint_Server_Name/TestSiteと定義されたURLの場合、対応するリソースは、アプリケーションMossAppの下にリソース・タイプMossResourceTypeのインスタンスとしてリソース/TestSiteを定義することによって作成されます。この場合、ポリシーはOracle Entitlements Serverオブジェクトを使用して作成されます。

カスタムHTTPモジュールは、Oracle Entitlements Serverによって実装され、MOSS Webサイトを保護します。ユーザーが保護されたコンポーネントへのアクセスを試みた場合、そのリクエストはカスタムHTTPモジュールによってインターセプトされ、ポリシーを評価するためにOracle Entitlements Serverに転送されます。決定がカスタムHTTPモジュールに返され、ユーザーがアクセスを拒否された場合、その場所を表示する権限がないことを示すメッセージを含むカスタム・エラー・ページが表示されます。


注意:

カスタムHTTPモジュールは、MOSSサイト構成ファイルweb.configHttpModules要素を定義することによって有効化されます。9.2.4項「SharePointセキュリティの構成」を参照してください。

9.2.1.2 Webパーツの保護

MOSS Webパーツは、Webページ内にコンテンツを公開するために使用されるという点がポートレットに似ています。1つのWebページに1つ以上のWebパーツが存在できます。Webパーツは、リソース・インスタンス名として固有のMOSS表示名を定義することによって、Oracle Entitlements Serverで表現されます。リソース・インスタンスは、親Webページのリソースの子として作成されます。

ユーザーが保護されたコンポーネントへのアクセスを試みた場合、そのリクエストはOracle Entitlements Serverに作成されたMOSS委任制御によってインターセプトされます。つまり、委任制御を使用すると、SharePointページに、そのページ自体を変更することなく、任意のカスタム.NETコードを配置できます。このカスタム・コードは、Oracle Entitlements Serverから決定を取得して、認可されていないWebパーツをページから削除するために使用されます。この場合、エラー・メッセージは表示されません。


注意:

委任OES認可制御は、Webパーツ・ページに明示的に追加されるか、またはWebサイトのマスター・ページで暗黙的に定義されます。9.2.4項「SharePointセキュリティの構成」を参照してください。

9.2.1.3 リストの保護

MOSSリストは、Webページ上のWebパーツ内のアイテムのコレクションです。MOSS Webサイトを作成する場合、使用するテンプレートに応じて一連のリストも作成されます。各リスト・アイテムはURLによって識別され、Oracle Entitlements Serverリソースとして表されます。これらのリストは、ドキュメント・リストまたは非ドキュメント・リストのどちらであるかに応じて、Oracle Entitlements Serverに組み込まれます。

  • ドキュメント・リストは、http://Sharepoint_Server_Name/TestSite/SharedDocuments/Forms/AllItems.aspxに移動すると、表示できます。/TestSite/SharedDocuments/Forms/AllItems.aspxという名前でトップレベル・リソースを作成します。次に、リストのアイテムごとに、トップレベル・リソースのサブリソースとして個別のリソース・オブジェクトを作成します。たとえば、リストのScott.sqlという名前のアイテムに/TestSite/SharedDocuments/Scott.sqlという名前でサブリソースを作成できます。

  • 非ドキュメント・リストは、http://Sharepoint_Server_Name/TestSite/Lists/Announcements/AllItems.aspxに移動すると、表示できます。/TestSite/Lists/Announcements/AllItems.aspxという名前でリソースを作成します。次に、同じレベルにリソース/TestSite/Lists/Announcements/EditForm.aspxとリソース/TestSite/Lists/Announcements/DispForm.aspxを作成します。ここでリストの任意のアイテムをクリックすると、URLとしてhttp://Sharepoint_Server_Name/web1/Lists/Announcements/DispForm.aspx?ID=2&Source=http%3A%2F%2Fsharepoint01%2FTestSite%2FLists%2FAnnouncements%2FAllItems%2Easpxが表示されます。このURLのURLパラメータとして定義されたIDをメモします。このIDは非ドキュメント・アイテムの名前として使用され、EditForm.aspxDispForm.aspxの両方のサブリソースとして作成されます。この手順は、非ドキュメント・リスト内のすべてのアイテムについて実行する必要があります。または、アイテムのリンクの上にマウスを移動して、ブラウザのステータス・バーに表示されるURLに含まれるIDをメモします。


    注意:

    リスト・アイテムの場合のみ、EditForm.aspxに対するポリシーを作成する必要はありません。同じDispForm.aspxに対するviewまたはANYを付与できます。viewの場合はReadOnlyアクセスが付与され、ANYの場合は完全なアクセス(編集、削除など)が付与されます。

9.2.1.4 Webページ内の機密コンテンツの保護

管理者は、SharePointサーバーを使用して、アクセス制御が必要な機密情報が含まれるカスタム・ページを公開できます。開発者は、Oracle Entitlements Serverタグ・ライブラリに対応するASPタグ内に機密情報を包含することができます。タグ・ライブラリはOracle Entitlements Serverと通信してアクセス決定を取得し、それに基づいて認可されたユーザーにのみコンテンツが表示されます。


注意:

ASPタグ・ライブラリは、MOSSページで名前空間、タグ接頭辞およびアセンブリを登録し、タグを使用して機密コンテンツを包含するMOSSページ開発者が使用するサーバー側Webコントロールです。このライブラリは、アクセス制御を提供するためにタグが使用されているカスタム・コンテンツ・ページにエンド・ユーザーがアクセスを試みたときに起動されます。

9.2.2 MOSSとWebサービスのセキュリティ・モジュールのインスタンス化

MOSSセキュリティ・モジュールは、Webサービス・セキュリティ・モジュールと連携して、MOSSリソースのきめ細やかな認可を提供します。セキュリティ・モジュールをインスタンス化する前に、前提となるMOSS環境が設定済であることを確認します。これには、MOSSのインストールおよび保護されるWebアプリケーションの作成が含まれます。


注意:

この手順では、Webアプリケーションの環境の詳細(ポート番号、URLなど)が必要です。

MOSSセキュリティ・モジュールとWebサービス・セキュリティ・モジュールは、同一サーバーへのデプロイと異なるサーバーへのデプロイが可能です。両方のセキュリティ・モジュールをインスタンス化するには、$ORACLE_CLIENT_HOME/oessm/SMConfigTool/binディレクトリにあるSMConfigツールを使用します。

  • MOSSセキュリティ・モジュールとWebサービス・セキュリティ・モジュールを同時にインスタンス化するには、config.sh with the parameter -smType mosswsを実行します。

  • これらのセキュリティ・モジュールを別々にインスタンス化するには、config.shを2回、1回目はパラメータ-smType mossで、2回目はパラメータ-smType wsで、実行します。

さらに、選択しているデプロイメントに応じてSMConfigツールを実行します。たとえば、MOSSと同じWindowsマシンにデプロイされているセキュリティ・モジュールをインスタンス化するには、次のコマンドを使用します。

config.sh –smType mossws –prpFileName file_name –mossprpFileName file_name 
   –smConfigId -WSListeningPort –pdServer –pdPort

ここで、prpFileNameはWebサービス・セキュリティ・モジュールの作成に使用されたsmconfig.prpであり、mossprpFileNameはMOSSサーバーの構成に使用されたプロパティ・ファイルです。


注意:

mossprpFileNameテンプレートは、$ORACLE_CLIENT_HOME/oessm/mosssm /adm/configtool/moss_config.propertiesにあります。moss_config.propertiesには、環境に従って定義する必要がある必須プロパティおよび未定義の場合はデフォルト値が使用されるオプション・プロパティが存在します。

異なるWindowsマシンにデプロイされているセキュリティ・モジュールをインスタンス化するには、先にWebサービス・セキュリティ・モジュールをインスタンス化します(特別な手順はありません)。その後で次のコマンドを使用して、MOSSセキュリティ・モジュールを構成します。

config.sh –smType moss –prpFileName file_name –mossprpFileName file_name

OESクライアントのインストール手順の詳細は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』を参照してください。

9.2.3 MOSSセキュリティ・モジュールの統合と統合解除

テンプレートmossprpFileNamemoss.enableOESプロパティの値を使用して、Oracle Entitlements ServerをMOSSアプリケーションと統合するか、またはOracle Entitlements ServerとMOSSアプリケーションの統合を解除することができます。

  • moss.enableOES=trueの場合、config.shをパラメータ-smType mossで実行すると、Oracle Entitlements ServerがMOSSアプリケーションと統合されます。

  • moss.enableOES=falseの場合、config.shをパラメータ-smType mossで実行すると、MOSSアプリケーションがそのデフォルト認可プロセスを使用するように構成されます。

9.2.4 SharePointセキュリティの構成

次の手順は、SMConfigツールによって開始される自動構成以外にMOSSアプリケーションの認可を手動で構成する手順を示します。この手順は、9.2.2項「MOSSとWebサービスのセキュリティ・モジュールのインスタンス化」config.shスクリプトによって自動実行される手順と同じであり、SMConfigツールを使用しない手順が必要な場合に使用できます。

この手順では、セキュリティ・モジュールがインスタンス化済であることを前提としています。インスタンス化後は、生成される構成IDとサービス・レジストリURLをメモします。この手順で、configIDはMOSS、サービス・レジストリURLはhttp://hostname:port/ServiceRegistryです。

  1. Oracle Entitlements Server管理コンソールを使用して、次の手順を実行します。

    • Webサービス・セキュリティ・モジュール定義を作成します。

      第10章「システム構成の管理」を参照してください。

    • 保護されるMOSSアプリケーションを表すアプリケーション・ポリシー・オブジェクトを作成します。

      アプリケーションの名前は、moss_config.propertiesファイルで定義されているmoss.app.nameプロパティの値と一致している必要があります。

      第4章「ポリシーとポリシー・オブジェクトの管理」を参照してください。

    • アプリケーションをWebサービス・セキュリティ・モジュール・プロファイルにバインドします。

      第10章「システム構成の管理」を参照してください。

  2. $OES_CLIENT_HOME/oes_sm_instances/MOSS_SM_Name/libディレクトリからOES.SharePoint.dlllog4net.dllC:/WINDOWS/assemblyディレクトリにドラッグ・アンド・ドロップします。

    これにより、アセンブリがWindowsのグローバル・アセンブリ・キャッシュに登録され、ホスト・マシン上のすべての.NETアプリケーションから使用できるようになります。

  3. MOSS 2007 (IIS 6)を使用している場合、次のコードをdefault.masterファイルのHTML HEADセクションに追加して、Oracle Entitlements Server委任制御を宣言します。

    <SharePoint:DelegateControl runat="server" ControlId="PageHeader"/>
    

    default.masterファイルはC:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\GLOBAL\ディレクトリにあります。この手順は、MOSS 2010 (IIS 7)を使用している場合は必要ありません。


    注意:

    default.masterを「ワードパッド」で開くと、既存の文字のかわりに疑問符(?)が表示されている箇所が散見されます。ファイルを変更して保存する前に、これが修正されていることを確認してください。または、ファイルを「メモ帳」で開いてください。

  4. ユーザーがMOSSコンポーネントへのアクセスを認可されていない場合にメッセージを表示するカスタム・エラー・ページを追加します。

    CustError.aspxcustError2010.aspxは、Oracle Entitlements ServerのMOSS用カスタム・エラー・ページです。これらは、$OES_CLIENT_HOME/oes_sm_instances/MOSS_SM_Name/adm/pagesディレクトリにあります。

    • MOSS 2007 (IIS 6)を使用している場合、custError.aspxC:\ Program Files\Common Files\Microsoft Shared\web server extensions\12\template\layoutsにコピーします。

    • MOSS 2010 (IIS 7)を使用している場合、custError2010.aspxC:\Program Files\Common Files\Microsoft Shared\web server extensions\14\template\layoutsにコピーし、名前をcustError.aspxに変更します。

  5. Sharepoint Serverのweb.config構成ファイルを編集して、Oracle Entitlements ServerとMOSSの統合を有効化します。

    web.configはSharePointアプリケーションの仮想ディレクトリ(C:\Inetpub\wwwroot\wss\VirtualDirectories\port-numberなど)にあります。ここで、port-numberはアプリケーションのポートです。


    注意:

    web.configを「ワードパッド」で開くと、既存の文字のかわりに疑問符(?)が表示されている箇所が散見されます。ファイルを変更して保存する前に、これが修正されていることを確認してください。または、ファイルを「メモ帳」で開いてください。

    1. 表9-3に記載されているプロパティをappSettingsセクションに追加します。例9-1は、appSettingsセクションを示しています。値はmossprpFileNameとして定義されているファイルから取得されています。

      例9-1 Sharepoint web.configファイルのappSettingsセクション

      <add key="SsmUrl" value="${moss.SmUrl}/ServiceRegistry"/>
      <add key="SsmId" 
           value="${oracle.security.jps.runtime.pd.client.sm_name}"/>
      <add key="ApplicationID" value="${application.id}"/>
      <add key="PolicyDomain" value="${policy.domain}"/>
      <add key="ResourceType" value="${moss.resourcetype}"/>
      <add key="log4NetXmlfile" value="${moss.log4NetXmlfile}"/>
      <add key="sharepointSite" value="${moss.sharepointSite}"/>
      <add key="EnableOES" value="${moss.EnableOES}"/>
      <add key="IgnoredExtensions" value="${moss.IgnoredExtensions}"/>
      <add key="IgnoredURLExpression" value="${moss.IgnoredURLExpression}"/>
      

      表9-3 MOSSアプリケーションのappSettingsプロパティ

      プロパティ 説明

      SsmUrl

      WebサービスSMのレジストリURL (http://oesw2k8:9400/ServiceRegistryなど)。

      SsmId

      このセキュリティ・モジュールの名前(MOSSなど)。

      IdentityAsserterName

      Oracle Entitlements Serverで構成されているIDアサーション・プロバイダの名前。現時点ではOESIdentityAssertionのみがサポートされています。

      ApplicationID

      保護されたMOSSリソースを表す構成済Oracle Entitlements Serverアプリケーションの名前。

      ResourceType

      すべてのMOSSリソースのリソース・タイプ(MossResourceTypeなど)。保護されたすべてのMOSSコンポーネントのリソース・タイプは、moss_config.propertiesファイルで定義されているmoss.resource.typeプロパティの値と一致している必要があります。

      log4NetXmlfile

      log4Net.xml構成ファイルへの完全修飾パス。log4Net.xmlファイルで定義されているログ・ファイルは、ログ・メッセージを書き込めるように読取り/書込みアクセス権がEveryoneに付与されている既存ディレクトリに存在する必要があります。

      sharepointSite

      トップレベルSharePointサイト(http://alesw2k8:9581/など)。

      Enable OES

      Oracle Entitlements Server統合を有効化するフラグで、値にtrueまたはfalseを設定します。

      IgnoredExtensions

      Oracle Entitlements Serverアクセス制御で無視されるファイル拡張子パターンのカンマ区切りリスト(次に例を示します)。

      png,js,css,axd
      

      これらのリソースへのアクセスがリクエストされた場合、常に付与されます。

      IgnoredURLExpression

      Oracle Entitlements Serverアクセス制御で無視されるファイル名パターンのカンマ区切りリスト(次に例を示します)。

      /_layouts/Authenticate.aspx,/_login/default.aspx,/_forms/default.aspx
      

      これらのリソースへのアクセスがリクエストされた場合、常に付与されます。


    2. 表9-3に記載されているSafeControl AssemblyエントリをSafeControlsセクションに追加します。

      例9-2 SafeControl Assemblyエントリ

      <SafeControls>
            ...
      <SafeControl Assembly="OES.Sharepoint, Version=1.0.0.0, Culture=neutral, 
        PublicKeyToken=68b08a2fa869dfdc" Namespace="OES.Sharepoint.Controls" 
        TypeName="*" Safe="True" />
      <SafeControl Assembly="OES.Sharepoint, Version=1.0.0.0, Culture=neutral, 
        PublicKeyToken=68b08a2fa869dfdc" Namespace="OES.Sharepoint.Modules" 
        TypeName="*" Safe="True" />
      </SafeControls>
      
    3. 使用するサーバーに基づいてカスタムhttpModulesを定義します。

      MOSS 2007 (IIS 6)を使用している場合、次の記述をhttpModulesセクションに追加します。

      <add name="CustHTTPModule" type="OES.Sharepoint.Modules.CustHTTPModule, 
        OES.Sharepoint, Version=1.0.0.0, Culture=neutral, 
        PublicKeyToken=68b08a2fa869dfdc " />
      

      MOSS 2010 (IIS 7)を使用している場合、例9-3assembliesセクションに、例9-4modulesセクション(最後の<remove>より後で最初の<add>より前の位置)に、それぞれ追加します。

      例9-3 add assemblyエントリ

      <assemblies>
      …
      <add assembly="OES.Sharepoint, Version=1.0.0.0, Culture=neutral, 
        PublicKeyToken=68b08a2fa869dfdc" />
      …
      </assemblies>
      

      例9-4 add nameエントリ

      <modules runAllManagedModulesForAllRequests="true">
      …
      <add name="CustHTTPModule" preCondition="integratedMode" 
        type="OES.Sharepoint.Modules.CustHTTPModule, OES.Sharepoint, 
        Version=1.0.0.0, Culture=neutral, PublicKeyToken=68b08a2fa869dfdc" />      
      …
      </modules>
      
    4. カスタム・コンテンツを公開する必要がある仮想パスでPageParserPaths (SafeModeセクション)を更新します。カスタム・コンテンツは、ソリューションによって提供されるタグ・ライブラリを介して認可できます。例9-5に例を示します。

      例9-5 PageParserPathsエントリ

      <PageParserPaths>
        <PageParserPath VirtualPath="/Pages/*" CompilationMode="Always"  
           AllowServerSideScript="true" IncludeSubFolders="true"/>
      </PageParserPaths>
      
    5. MOSSのPortalSiteMapProviderの詳細(例9-6を参照)をOracle Entitlements ServerのPortalSiteMapProviderの詳細(例9-7を参照)で更新します。

      Oracle Entitlements ServerのカスタムPortalSiteMapProviderは、ナビゲーション・バー・アイテムを保護します。

      例9-6 MOSSのPortalSiteMapProvider

      <SiteMap>
       <Providers>
           …
      <add name="GlobalNavigation" description="Provider for MOSS Global Navigation" 
        type="Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider, 
        Microsoft.SharePoint.Publishing, Version=14.0.0.0, Culture=neutral, 
        PublicKeyToken=71e9bce111e9429c" NavigationType="Combined" Version="14" />
      <add name="CurrentNavigation" description="Provider for MOSS Current Navigation" 
        type="Microsoft.SharePoint.Publishing.Navigation.PortalSiteMapProvider, 
        Microsoft.SharePoint.Publishing, Version=14.0.0.0, Culture=neutral, 
        PublicKeyToken=71e9bce111e9429c" NavigationType="Current" Version="14" />        
           …
       </Providers>
      </SiteMap>
      

      例9-7 Oracle Entitlements ServerのPortalSiteMapProvider

      <SiteMap>
       <Providers>
           …
      <add NavigationType="Combined" Version="1" description="Provider for MOSS 
        Global Navigation" name="GlobalNavigation" 
        type="OES.Sharepoint.Controls.OESPortalSiteMapProvider, OES.Sharepoint, 
        Version=1.0.0.0, Culture=neutral, PublicKeyToken=68b08a2fa869dfdc"/>
      <add NavigationType="Current" Version="1" description="Provider for MOSS 
        Current Navigation" name="CurrentNavigation" 
        type="OES.Sharepoint.Controls.OESPortalSiteMapProvider, OES.Sharepoint, 
        Version=1.0.0.0, Culture=neutral, PublicKeyToken=68b08a2fa869dfdc"/> 
           …
       </Providers>
      </SiteMap>
      
    6. IISサーバーを再起動して、前述の変更をIISサーバーに反映させます。

  6. OESAuthorizationFeatureディレクトリをMOSS FEATURESディレクトリにコピーします。

    • MOSS 2007 (IIS 6)を使用している場合、$OES_CLIENT_HOME/oes_sm_instances/MOSS_SM_Name/lib/OESAuthorizationFeatureディレクトリをC:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\FEATURESディレクトリにコピーします。

    • MOSS 2010 (IIS 7)を使用している場合、$OES_CLIENT_HOME/oes_sm_instances/MOSS_SM_Name/lib/OESAuthorizationFeature2010ディレクトリをC:\Program Files\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\FEATURESディレクトリにコピーし、ディレクトリ名をOESAuthorizationFeatureに変更します。

  7. 次のいずれかのコマンドを使用して、指定したサイトにOESAuthorizationFeatureをインストールし、アクティブ化します。

    OES認可機能は、「サイトの設定」→「すべてのサイト設定の変更」→「サイトの機能」に移動して、WebサイトごとおよびサブWebサイトごとに個別にアクティブ化できます。サブWebに対してアクティブ化した場合、サブWeb内部のすべてのWebページのすべてのWebパーツにアクセス制御を適用できます。

    • MOSS 2007 (IIS 6)を使用している場合、コマンド・プロンプトを開き、次のコマンドを実行します。

      "C:\Program Files\Common Files\Microsoft Shared\web server 
      extensions\12\BIN\STSADM.EXE" –o installfeature –name 
      OESAuthorizationFeature
       
      "C:\Program Files\Common Files\Microsoft Shared\web server 
      extensions\12\BIN\STSADM.EXE" –o activatefeature –name 
      OESAuthorizationFeature –url http://alesw2k3:9581
      
    • MOSS 2010 (IIS 7)を使用している場合、コマンド・プロンプトを開き、次のコマンドを実行します。

      "C:\Program Files\Common Files\Microsoft Shared\web server 
      extensions\14\BIN\STSADM.EXE" –o installfeature –name 
      OESAuthorizationFeature
       
      "C:\Program Files\Common Files\Microsoft Shared\web server 
      extensions\14\BIN\STSADM.EXE" –o activatefeature –name 
      OESAuthorizationFeature –url http://aleswin2k8:9581
      
  8. IISサーバーを再起動します。

  9. %OES_CLIENT_HOME%\oessm\mosssm\libディレクトリにあるMOSSResourceDiscovery.exeを使用して、SharePointサーバーのすべての保護されたリソースのリストを取得します。


    注意:

    MOSSリソースは、Oracle Entitlements Serverのリソースに、階層的にマップされます。したがって、検出されたすべてのリソースをポリシー・ストアに定義する必要はありません。たとえば、10,000個のドキュメント名を個別にコピーするのではなく、これらのドキュメントが存在するフォルダの名前をコピーし、リソース名式(/lib/*など)を使用してポリシーを作成します。

    この実行可能ファイルはMOSSセキュリティ・モジュールに含まれ、object1という名前のプレーン・テキスト・ファイルおよびdiscovered-jazn-data.xmlという名前のXMLファイルを生成します。MOSSリソースは両方のファイルで定義されます。MOSSResourceDiscovery.exe実行可能ファイルは、次の情報の入力を要求します。

    • ファイルを作成するディレクトリへのパス(c:\inetpub\wwwroot\wss\VirtualDirectories\9581\policyなど)。このディレクトリは事前に作成済である必要があります。

    • 管理URLファイルが存在するディレクトリへのパス($OES_CLIENT_HOME/oessm/mosssm/adm/Discovery/AdmUrls.txtなど)。

    • Sharepoint ServerサイトURL (http://amw2k8:9581など)。URLの末尾にスラッシュ(/)を付けないでください。

    • MOSSアプリケーションを表すOracle Entitlements Serverアプリケーション・オブジェクトの名前(MossAppなど)。

    • Oracle Entitlements Serverリソース・タイプの名前。この値は常にMossResourceTypeである必要があります。

    XMLファイルはポリシー移行ツールで使用できます。詳細は、13.5項「ポリシーの移行」を参照してください。テキスト・ファイルは、次の手順でリソースをOracle Entitlements Serverポリシー・ストアにインポートするために使用されます。

  10. テキスト・ファイルをポリシー移行ツールmanage-policy.cmd|shの入力として使用して、MOSSリソースをOracle Entitlements Serverポリシー・ストアにインポートします。

    manage-policy.cmd|shは、%OES_CLIENT_HOME%\oessm\binディレクトリにあります。このインポートにより、MOSSリソースがポリシー・ストアに追加されます。既存のMOSSアプリケーション(および関連するポリシー)は削除されません。入力値(アプリケーション名、リソース・タイプおよび生成されるリソース・ファイル)は、前述の手順でMOSSResourceDiscovery.exeで使用した入力と一致している必要があります。

    manage-policy.cmd|shを実行する前に、スクリプトを次のように変更します。

    このツールは1回のみ実行します。新しいリソースは、管理コンソールを使用して手動で作成します。

  11. 管理コンソールを使用してポリシーを配布します。

9.3 Oracle Service Busリソースの保護

Oracle Service Bus (OSB)は、多数の分散サービス・エンドポイントを中央で管理および制御するように設計されています。Oracle Entitlements Serverを使用することで、企業はOSBランタイム・リソースへのアクセスを制御し、認可された後にのみそれらがアクセス可能になるようにできます。一般に、OSBランタイム・リソースは、isAccessAllowed()認可APIに渡されるリソースです。


注意:

Oracle Entitlements Serverでは、OSBコンソールなど、OSB構成時に使用されるリソースは保護されません。

次の各項には、OSBリソース・オブジェクトの詳細とその値をOracle Entitlements Serverポリシー・オブジェクトにマップする方法の詳細が含まれています。

9.3.1 OSBリソース・オブジェクトの調査

OSBランタイム・リソースはオブジェクトとして表されます。リソースを表すオブジェクトには、オブジェクトのコンテキスト(OSBプロジェクトまたはタスクなど)を表す値を定義するKEYS文字列配列が含まれます。OSBリソースを保護するには、認可ポリシーの定義に使用するOracle Entitlements Serverセキュリティ・オブジェクトを作成する際に、リソース・オブジェクトのKEYSに渡される値を反映する必要があります。OSBリソース・オブジェクトで定義されるKEYSのリストを次に示します。このOSBリソース・オブジェクトのタイプは常に<alsb-proxy-service>です。

  • proxyは、保護されるリソースに関連付けられたOSBプロキシ・サービスの名前を定義します。この値によって1つのOSBプロキシ・サービスが一意に識別されます。

  • pathは、OSBプロキシ・サービスへのフルパス(Project-name/Folder-nameなど)です。

    • Project-nameは、プロキシ・サービスが関連付けられているOSBプロジェクトの名前です。

    • Folder-nameは、プロキシ・サービスにオプションで定義されるディレクトリ構造です。/folder_name/sub_folder_nameのように、文字列セパレータ/を使用すると、複数のディレクトリを定義できます。

    この値によって、proxyで参照されているOSBプロキシ・サービスと同じOSBプロキシ・サービスが一意に識別されます。

  • actionは、OSBプロキシ・サービスへのエントリがセキュアかどうかを定義し、次のいずれかの値が設定されます。

    • invokeはOSBプロキシ・サービスへのエントリに対するアクセス制御を表します。

    • wss-invokeはOSBプロキシ・サービスの操作へのエントリに対するセキュア・アクセス制御を表します。OSB Webサービス・セキュリティは、このアクションを使用して構成されます。

  • operationは、起動されるWebサービス操作の名前を定義します。actioninvokeの場合、この値はnullです。


注意:

OSBプロキシ・サービスでWebサービス・セキュリティを使用する場合、OSBはトランスポート・レイヤーとメッセージ・レイヤーでセキュリティ・チェックを実行します。OSBは、トランスポート・レイヤーではユーザーがプロキシ・サービスへのアクセスを許可されているかどうかを確認し、メッセージ・レイヤーではユーザーが指定されたプロキシ・サービス操作の実行を許可されているかどうかを確認します。したがって、トランスポート・レイヤーにユーザー情報が渡されない場合は、匿名ロールにアクセス権限を付与するポリシーを追加する必要があります。

OSBリソースのOracle Entitlements Serverポリシー・オブジェクトへのマッピングは、選択されたセキュアまたは非セキュアなアクションに応じて異なります。詳細は、9.3.2項「セキュアなOSBリソースのOracle Entitlements Serverへのマッピング」9.3.3項「非セキュアなOSBリソースのOracle Entitlements Serverへのマッピング」を参照してください。

9.3.2 セキュアなOSBリソースのOracle Entitlements Serverへのマッピング

OSBリソース・オブジェクトでwss-invokeアクションが定義されている場合、適用可能なOSBプロキシ・サービスではOSB Webサービス・セキュリティが使用されます。SampleProxyServiceという名前のOSBプロキシ・サービスが、SampleProjectという名前のOSBプロジェクトに関連付けられ、OSB Webサービス・セキュリティを使用するように構成されていると仮定します。このサービス・リソースは、Mortgage/ProxyServiceフォルダにあります。したがって、KEYS値は次のようになります。

  • path: SampleProject/Mortgage/ProxyService

  • proxy: SampleProxyService

  • action: wss-invoke

  • operation: sayHello (Webサービス・アクションがsayHelloであるとします)

これらのKEYS値に基づいて、Oracle Entitlements Serverオブジェクト値は次のようになります。

  • アプリケーション - OSBリソースの保護に使用するアプリケーションの名前はalsbProxyServicesにする必要があります。

  • リソース・タイプ - この値は常にOSBオブジェクト・タイプalsb-proxy-serviceである必要があります。また、「リソース階層のサポート」パラメータの値としてyesを選択します。


    注意:

    リソース・タイプalsb-proxy-serviceのアクションとしてwss-invokeを追加する必要はありません。ポリシーの操作のみ選択します。

  • リソース - SampleProject/Mortgage/ProxyService/SampleProxyService/sayHello (OSBリソース・オブジェクトのpath/proxy KEYS値の値に等しい値を使用します)

  • アクション - access (Oracle Entitlements Serverのデフォルト権限accessが常に使用されます)

9.3.3 非セキュアなOSBリソースのOracle Entitlements Serverへのマッピング

OSBリソース・オブジェクトでinvokeアクションが定義されている場合、適用可能なOSBプロキシ・サービスではOSB Webサービス・セキュリティは使用されません。SampleProxyServiceという名前のOSBプロキシ・サービス・リソースが、SampleProjectという名前のOSBプロジェクトに関連付けられていると仮定します。このサービス・リソースは、Mortgage/ProxyServiceフォルダにあります。したがって、KEYS値は次のようになります。

  • path: SampleProject/Mortgage/ProxyService

  • proxy: SampleProxyService

  • action: invoke

  • operation: null

これらのKEY値に基づいて、OSB Webサービス・セキュリティで構成されていない場合、Oracle Entitlements Serverオブジェクト値は次のようになります。

  • アプリケーション - alsbProxyServices (OSBリソース・オブジェクトには定義済の値がないので、このデフォルト値が使用されます)

  • リソース・タイプ - この値は常にOSBオブジェクト・タイプalsb-proxy-serviceである必要があります。また、「リソース階層のサポート」パラメータの値としてyesを選択します。

  • リソース - SampleProject/Mortgage/ProxyService/SampleProxyService (OSBリソース・オブジェクトのpath/proxyの各KEYS値の値に等しい値を使用します)

  • アクション - access(operationに値が設定されている場合はその値が使用され、設定されていない場合はOracle Entitlements Serverのデフォルト権限accessが使用されます)

9.3.4 WebLogic Serverプロバイダの有効化

OSBランタイム・リソースを保護するには、Oracle Entitlements Serverプロキシ・プロバイダも有効化する必要があります。これを実現する手順は、9.4.1項「WebLogic Serverとの統合」を参照してください。

9.4 WebLogic Serverリソースの保護

WebLogic Serverセキュリティ・モジュールは、認可リクエストを受信する認可APIを提供するだけでなく、特定のOracle Entitlements Serverの認可プロバイダとロール・マッピング・プロバイダを構成した後にWebLogic Server固有のリソースを保護できます。次の主要な手順では、WebLogic Serverリソースを保護するタスクについて説明します。

  1. 認可プロバイダおよびロール・マッピング・プロバイダを有効化します。

    9.4.1項「WebLogic Serverとの統合」を参照してください。

  2. 検出モードを使用して、保護されるリソースを検出します。

    9.4.2項「WebLogic Serverリソースの検出」を参照してください。

  3. WebLogic Server固有のリソースをOracle Entitlements Serverオブジェクトとして定義します。

    9.4.3項「WebLogic Serverリソースの変換」9.4.4項「WebLogic Serverリソースのポリシー・オブジェクトへのマッピング」を参照してください。

  4. 適切な認可ポリシーとロール・マッピング・ポリシーを構成します。

    第4章「ポリシーとポリシー・オブジェクトの管理」を参照してください。

  5. ポリシーをセキュリティ・モジュールに配布します。

    第6章「ポリシー配布の管理」を参照してください。

9.4.1 WebLogic Serverとの統合

1.3.2.2項「PDP/PEPの組合せとしてのセキュリティ・モジュール」で説明しているように、WebLogic Serverは、ロール・マッピングおよび認可プロバイダを有効化した後で、認可リクエストを自動的に捕捉できます。次の手順は、これを行う方法を説明します。ここでは、WebLogic Serverは、$DOMAINドメインの$WLSディレクトリにインストールされていることを前提としています。次の手順を実行する際は、インストールに合わせて値を置き換えてください。

  1. 次のコマンドを使用して、$DOMAINドメインを起動します。

    $DOMAIN/startWeblogic.sh
    
  2. 認可プロキシおよびロール・マッピング・プロバイダを、ドメインを保護するレルムに追加します。

    図9-1は、これを示すWebLogic Serverコンソールのスクリーンショットです。

    図9-1 WebLogic Serverドメインのレルムへのプロバイダの追加

    図9-1の説明が続きます
    「図9-1 WebLogic Serverドメインのレルムへのプロバイダの追加」の説明

  3. ドメインを再起動します。

プロバイダを有効化したら、構成パラメータについてA.2.5項「WebLogic Serverセキュリティ・モジュール」を参照してください。

9.4.2 WebLogic Serverリソースの検出

アプリケーションのリソースを保護するポリシーを作成する場合、保護される必要があるすべてのリソースは検出される必要があります。WebLogic Serverセキュリティ・モジュールを検出モードで実行し、(使用状況を追跡するために)1つ以上のユーザー・セッションを開くことによって、アプリケーションのリソースを定義できます。(検出モードは、認可するのではなく、保護されるオブジェクトを検出します。)ユーザー・セッション中に実行されたアクティビティに基づいて、Oracle Entitlements Serverは初期ポリシー・セット(保護されるすべてのリソースが定義されます)が生成されます。生成されたポリシー・セットは、ポリシー・ストアにインポートできます。


注意:

生成されたファイルは、アプリケーションを完全に保護するポリシー・セットを定義する出発点として機能するように作られています。詳細は次のとおりです。
  • 記録されるのはユーザー・セッション中のリクエストに基づくポリシー・データのみであり、使用されないアプリケーションのパーツのポリシー・データは生成されません。

  • アプリケーションのリソースの定義に使用するリソース階層によっては、インポートされたポリシー・セットに実際に必要な数よりも多くのリソースが含まれる可能性があります。


リソース検出は、認可プロバイダおよびロール・マッピング・プロバイダが検出モードで実行されている場合に有効です。このモードでは、これらのプロバイダからユーザー・リクエストの評価結果として常にtrueが返され、それらのリクエストに対する初期ポリシー・ファイルが生成されます。検出モードでは、アプリケーション、リソース・タイプ(と対応するアクション)、リソース・タイプmatcherClass名およびリソースが検出される可能性があります。次の各項では、詳細を説明します。

9.4.2.1 検出モードの有効化

デフォルトでは、検出モードはオフです。(jps-config.xmlで)oracle.security.jps.discoveryModeプロパティをtrueに設定すると、機能が有効になります。oracle.security.jps.discoveredPolicyDirプロパティのディレクトリ値を追加すると、ポリシー・セットの書込み先が定義されます。


注意:

検出モードでは、階層型リソース・タイプの親リソースは生成されません。検出されるすべてのリソース・タイプが階層型であることを管理者が知っている場合は、オプションのoracle.security.jps.discoveredResourceIsHierarchicalプロパティとoracle.security.jps.discoveredResourceNameDelimiterプロパティに適切な値を追加します。

これらの構成パラメータの詳細は、付録A『インストール・パラメータおよび構成パラメータ』を参照してください。

9.4.2.2 検出したリソースのロード

生成される検出モード・ファイルは、jazn-data.xmlスキーマに基づいた、例9-8に示す標準XMLポリシー・ストア・ファイルです。Oracle Entitlements Server APIを使用して、検出されたオブジェクトを、ポリシー・ストア内の認可ポリシー・オブジェクトとして作成します。詳細は、13.5項「ポリシーの移行」を参照してください。

例9-8 検出されたリソースのサンプル・ファイル

<?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?>
<jazn-data xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
  xsi:noNamespaceSchemaLocation=
  "http://xmlns.oracle.com/oracleas/schema/jazn-data-11_0.xsd"> 
<policy-store>
  <applications>
    <application>
      <name>addConfRes#V2.0</name>
        <resource-types>
          <resource-type>
            <name>FileResourceType</name>
              <matcher-class>oracle.security.jps.JpsPermission</matcher-class>
                 <actions-delimiter>,</actions-delimiter>
                 <actions>delete,write,read</actions>
          </resource-type>
        <resource-type>
            <name>ResType1</name>=
                 <actions-delimiter>,</actions-delimiter>
                 <actions>write,read</actions>
        </resource-type>
       </resource-types>
       <resources>
         <resource>
           <name>EmpInfo</name>
           <type-name-ref>FileResourceType</type-name-ref>
         </resource>
         <resource>
           <name>resource1</name>
           <type-name-ref>ResType1</type-name-ref>
         </resource>
       </resources>
      </application>
    </applications>
  </policy-store>    
</jazn-data>

9.4.3 WebLogic Serverリソースの変換

この項では、WebLogic Serverによってサポートされている様々なリソース・タイプをOracle Entitlements Serverで変換する方法およびOracle Entitlements Server管理コンソールでそれらを表す方法について説明します。WebLogic Serverリソースは、WebLogicセキュリティ・サービスが基礎となるWebLogic Serverエンティティを表すために作成するオブジェクトであり、誰がエンティティにアクセスできるのかを決定するために使用されます。

認可ポリシーでは、オブジェクトの中でも特に、トップレベルのアプリケーション、リソース・タイプおよび保護される実際のリソースが定義されます。このオブジェクトには、表9-4に記載されているオブジェクトが含まれる可能性があります。

表9-4 WebLogic Server認可ポリシー・オブジェクト

ノード 説明

アプリケーション

アプリケーションは、リソースが関連付けられているアプリケーションに対応します。すべてのリソースが特定のアプリケーションに属するわけではありません。たとえば、JDBCリソースはアプリケーションに属していません。このような場合、アプリケーションの名前のかわりにsharedが使用されます。アプリケーション名は、管理コンソールでアプリケーションが作成される際に定義されます(MyEjbApplicationなど)。

リソース・タイプ

リソース・タイプは、9.4.4項で定義されている、サポートされているWebLogic Serverリソース・タイプに対応します。リソース・タイプ名は、管理コンソールでリソース・タイプが作成される際に定義されます(ejbなど)。リソース・タイプは階層型またはフラットとして定義できます。

リソース

リソースは、保護されるリソース・タイプのインスタンスです。リソースは、階層型(すべての内容が保護されるディレクトリとして)または特定のファイルである可能性があります。リソース・インスタンスの作成元のリソース・タイプは、最初は階層型として定義される必要があります。


9.4.4 WebLogic Serverリソースのポリシー・オブジェクトへのマッピング

この項では、Oracle Entitlements Serverポリシー・オブジェクトを、共通の外部リソースに対して定義されたWebLogic Serverリソースにマップする方法について説明します。WebLogic Serverでサポートされるリソース・タイプ値には、admappcomeisejbjdbcjmsjndildsvrurlwebおよびwebservicesがあります。ここでは、次のリソース・タイプについて説明します。

9.4.4.1 Enterprise Java Beanリソース

Enterprise Java Bean (EJB)リソースの保護に使用するポリシーのオブジェクトを定義する場合、ポリシー・オブジェクトには、標準のEJBデプロイメント・ディスクリプタejb-jar.xmlで定義されている値に基づいて名前を付ける必要があります。例9-9は、AccountServiceという名前のEJBを定義する方法を示します。

例9-9 ejb-jar.xmlのEJBリソースの定義

<enterprise-beans>
<!-- Session Beans -->
  <session>
    <display-name>AccountService</display-name>
    <ejb-name>AccountService</ejb-name>
    <home>com.bea.security.examples.ejb.AccountServiceHome</home>
    <remote>com.bea.security.examples.ejb.AccountService</remote>
    <ejb-class>ejb.AccountServiceSession</ejb-class>
    <session-type>Stateless</session-type>
    <transaction-type>Bean</transaction-type>
  </session>
</enterprise-beans>

表9-5では、EJBリソースで使用するポリシー・オブジェクトを定義する際に使用する必要があるマッピングを説明します。

表9-5 EJB定義のポリシー・オブジェクトへのマッピング

ポリシー・オブジェクト名 EJB定義

アプリケーション

EJB名と同じ(この場合はAccountService)

リソース・タイプ

ejbを使用

リソース名

ejb_name/method_name。説明は次のとおりです。

  • ejb_nameはEJBの名前

  • method_nameは起動されるメソッドの名前

EJBメソッドはリソースURLの一部です。リソース・アクションは常にexecuteです。


次のリストには、認可ポリシーで条件の一部として使用できる、JNDIリソースでサポートされている属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。

  • application: アプリケーションの名前

  • module: モジュールの名前

  • ejb: EJBの名前

  • method: メソッドの名前

  • methodインタフェース: 値としてHome、Remote、LocalHomeまたはLocalを使用します

  • ParamN: メソッドのN番目のパラメータの値(Param1、Param2…など)


注意:

条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。

9.4.4.2 Java Naming and Directory Interfaceリソース

Java Naming and Directory Interface (JNDI)ベースのリソースの保護に使用するポリシーのオブジェクトを定義する場合、ポリシー・オブジェクトには、WebLogic固有のデプロイメント・ディスクリプタweblogic-ejb-jar.xmlで定義されている値に基づいて名前を付ける必要があります。例9-10は、AccountServiceという名前のEJBにJNDI名を定義する方法を示します。

例9-10 weblogic-ejb-jar.xmlのJNDIリソースの定義

<weblogic-ejb-jar>
  <weblogic-enterprise-bean>
    <ejb-name>AccountService</ejb-name>
    <stateless-session-descriptor></stateless-session-descriptor>
    <reference-descriptor></reference-descriptor>
    <jndi-name>AccountService</jndi-name>
  </weblogic-enterprise-bean>
</weblogic-ejb-jar>

表9-6では、JNDIベースのリソースで使用するポリシー・オブジェクトを定義する際に使用する必要があるマッピングを説明します。

表9-6 JNDI定義のポリシー・オブジェクトへのマッピング

ポリシー・オブジェクト名 JNDI定義

アプリケーション

shared

リソース・タイプ

jndi

リソース

未使用


JNDIコールのアクションはJNDIアクション名です。次のいずれかの値を使用できます。

  • modifyは、アプリケーションでJNDIツリーになんらかの変更(追加、削除、変更)を行う場合に常に必要です。これには、bind()rebind()createSubContext()destroySubContext()およびunbind()の各メソッドが含まれます。

  • lookupは、アプリケーションでJNDIツリーのオブジェクトをルックアップする場合に常に必要です。これには、lookup()メソッドとlookupLink()メソッドが含まれます。

  • listは、アプリケーションでJNDIのコンテキストのコンテンツをリストする場合に常に必要です。これには、list()メソッドとlistBindings()メソッドが含まれます。

次のリストには、認可ポリシーで条件の一部として使用できる、JNDIリソースでサポートされている属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。

  • application - 常にshared

  • path - JNDIリソース・パス

  • action - JNDIアクション名(modify | lookup | list)


注意:

条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。

9.4.4.3 URLリソース

URL (Web)リソースは、Webアプリケーションに関連する特定のWebLogic Serverリソースです。Webアプリケーションを保護するには、Web Application Archive (WAR)の認可ポリシーまたはWebアプリケーションの個別のコンポーネント(サーブレット、JSPなど)の認可ポリシーを作成します。表9-7は、URLリソースを保護する場合にOracle Entitlements Serverオブジェクトに名前を付ける方法を示します。これらの値は、Oracle Entitlements Server管理コンソールでオブジェクトが作成される際に定義されます。

表9-7 Oracle Entitlements ServerオブジェクトにマップされたURLリソース値

OESオブジェクト名 URLリソース値

アプリケーション

値として、リソースである(またはリソースを含む)Webアプリケーション名(WebLogic Server構成ファイルで定義されている)を使用します(bankappなど)。

リソース・タイプ

値として、サポートされているいずれかのリソース・タイプを使用します(この場合はurl)。

リソースの親

値として、WebLogic Server構成ファイルで定義されているWebアプリケーションのコンテキスト・パスを使用します。次の例では、コンテキスト・パスが、最初の2つのポリシーでは/currencyExchange、最後の2つのポリシーでは/mybrokerとそれぞれ定義されています。

リソース

値としてコンテキスト・パスの後のリソースURIを使用します。この場合はcurrentRates.jspです。


URLリソースの認可ポリシーの作成方法を示すために、複数の銀行関連JSPからアクセス可能なWebリソースを保護する必要があると仮定します。WebLogic Server構成ファイルでは、Webアプリケーション名のbankappおよびコンテキスト・パスの/currencyExchange(最初の2つのポリシーの場合)と/mybroker(最後の2つのポリシーの場合)が参照されます。URLリソースの場合、アクション名はHTTPリクエスト・メソッド名(GET、POST、PUT、HEAD、DELETE、TRACE、CONNECTなど)にマップされます。

最初の認可ポリシーの例では、セキュア接続(HTTPS)経由でページがアクセスされている場合、任意の認可されていないユーザー(匿名)に現在の通貨交換レート(currentRates.jsp)を表示する権限が付与されます。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = bankapp

  • リソース・タイプ = url

  • リソース = currencyExchange/currentRates.jsp

  • アクション = GET

  • ユーザー = anonymous (unauthorized)

  • 条件 = if issecure=yes

GETアクションは認可ポリシーの一部であって、認可ポリシーのアクションではないことに注意してください。リソース・タイプに対して許可されるすべてのアクションは常に、リソース・タイプ・プロファイルの一部として定義されます。ポリシー・アクションは常にGRANTまたはDENYです。

2番目の認可ポリシーの例では、Managerロールの任意のメンバーがローカル・マシンからデータを更新する場合は、新しい通貨交換レートをポスト(postNewRates.jsp)する権限が付与されます。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = bankapp

  • リソース・タイプ = url

  • リソース = currencyExchange/postNewRates.jsp

  • アクション = POST

  • ロール = Manager

  • 条件 = if remotehost="localhost"

POSTアクションは認可ポリシーの一部であって、認可ポリシーのアクションではないことに注意してください。リソース・タイプに対して許可されるすべてのアクションは常に、リソース・タイプ・プロファイルの一部として定義されます。ポリシー・アクションは常にGRANTまたはDENYです。

3番目の認可ポリシーの例では、顧客の購買力が正の場合に、buyStocks.jspへのアクセス権が付与されます。顧客の購買力が正ではない場合、ページは表示されません。購入力を解読するために、顧客がbuyStocks.jspリンクをクリックすると、ブラウザによりJavaサーブレットにマップされたHTTPリクエストが送信されます。このリクエストは、サーブレットによってpurchasingPowerという名前のリクエスト属性が設定され、2番目のページに転送されます。このページでは、顧客のすべての口座から残高がフェッチされ、新しい株の購入に使用できる金額(購買力)が計算されて、purchasingPower属性に値が設定されます。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = bankapp

  • リソース・タイプ = url

  • リソース = mybroker/buyStocks.jsp

  • アクション = GET

  • ロール = Client

  • 条件 = if purchasingPower>0

GETアクションは認可ポリシーの一部であって、認可ポリシーのアクションではないことに注意してください。リソース・タイプに対して許可されるすべてのアクションは常に、リソース・タイプ・プロファイルの一部として定義されます。ポリシー・アクションは常にGRANTまたはDENYです。

4番目の認可ポリシーでは、(チェック・ボックスを選択することによって)取引契約に同意した場合にのみ顧客が口座を開くことが許可されます。openAccount.jspリンクをクリックした後、最初に表示されるページには取引契約が表示され、顧客に同意を求めます。チェック・ボックスは、customerAgreedという名前のHTMLフォーム・パラメータにリンクされています。顧客が取引契約に同意した場合、HTMLフォームがポストされたときに、このパラメータがtrueに設定されます。ポリシーでは、この値をcustomerAgreed HTTPリクエスト・パラメータで確認します。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = bankapp

  • リソース・タイプ = url

  • リソース = mybroker/openAccount.jsp

  • アクション = POST

  • ロール = Client

  • 条件 = if Not customerAgreed="true"

POSTアクションは認可ポリシーの一部であって、認可ポリシーのアクションではないことに注意してください。リソース・タイプに対して許可されるすべてのアクションは常に、リソース・タイプ・プロファイルの一部として定義されます。ポリシー・アクションは常にGRANTまたはDENYです。

表9-8に、認可ポリシーで条件の一部として使用できる、URLリソースでサポートされている動的属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。

表9-8 URLリソースによりサポートされている動的属性

属性名 説明

application

Webアプリケーションの名前。

contextpath

Webアプリケーションのコンテキスト・パス。

uri

リソースのURI。

httpmethod

HTTPメソッド(アクションと同じ)。

transporttype

URLリソースにアクセスするために必要なトランスポート保証。デプロイメント・ディスクリプタの対応する<transport-guarantee>要素に表示されます。値はINTEGRALまたはCONFIDENTIALのどちらかです。

authtype

サーブレットの保護に使用する認証スキームの名前。値はBASIC、FORM、CLIENT_CERTまたはDIGESTのいずれかです。

pathInfo

クライアントがリクエストしたときに送信したURLに関連付けられている追加パス情報。

pathtranslated

サーブレットの後から問合せ文字列の前までの追加情報が実際のパスに変換された値。

querystring

リクエストURLのパスの後に含まれる問合せ文字列。

remoteuser

ユーザーが認証済の場合、リクエストしたユーザーのログイン。

requestedsessionid

クライアントが指定したセッションID。

requesturi

このリクエストのURLのHTTPリクエストの1行目のプロトコル名から問合せ文字列までの部分。

requesturl

クライアントがリクエストするために使用するURL。返されるURLには、プロトコル、サーバー名、ポート番号およびサーバー・パスが含まれますが、問合せ文字列パラメータは含まれません。

servletpath

このリクエストのURLのサーブレットをコールする部分。

characterencoding

リクエストの本体で使用される文字エンコーディング。

contenttype

リクエストの本体のMIMEタイプ。

locale

クライアントの優先ロケール。

protocol

プロトコルの名前とバージョン(HTTP/1.1など)。

remoteaddr

クライアントまたは最後にリクエストを送信したプロキシのインターネット・プロトコル・アドレス。

remotehost

クライアントまたは最後にリクエストを送信したプロキシの完全修飾名。

scheme

このリクエストのために使用したスキームの名前(http、httpsまたはftpなど)。

servername

リクエストの送信先のサーバーのホスト名。

serverport

リクエストの送信先のポート番号。

issecure

このリクエストがセキュア・チャネル(HTTPSなど)を使用しているかどうかを示すブール値。



注意:

条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。

HTTPリクエストには、サーブレット属性、URL問合せパラメータ、HTTPリクエスト・ヘッダーおよびCookieなどの要素が含まれる可能性があります。これらの要素は名前と値のペアとして使用でき、動的属性にマップできます。


注意:

サーブレット属性、URL問合せパラメータ、HTTPリクエスト・ヘッダーおよびCookieに対応する属性は大/小文字が区別されません。ただし、属性名は大/小文字が区別されると仮定すると、パフォーマンスがわずかですが向上します。

フレームワークが一致する属性を検索する順序は次のとおりです。

  1. URL問合せパラメータ - URLに追加される名前と値のペア。URL問合せ文字列に含まれるパラメータに対応する属性名は、パラメータ名と同じです。名前は文字列として表され、大/小文字は区別されません。属性は、リクエスト内にエンコードされている問合せ文字列変数です。たとえば、URLに?test=endcoded%20charという問合せが含まれる場合、認可ポリシーの条件では"if test= "encoded char"としてパラメータにアクセスできます。

  2. サーブレット属性 - サーブレット・コンテナにより内部的にリクエストに追加できる名前と値のペア。それを実現するには、通常はServletRequestインタフェースのsetAttributeメソッドをコールします。ポリシー属性名はサーブレット属性の名前に一致し、文字列として表され、大/小文字は区別されません。

  3. HTTPリクエスト・ヘッダー - HTTPリクエスト・ヘッダーの属性名はヘッダーの名前に一致します。名前は文字列として返され、大/小文字は区別されません。使用可能なヘッダーの例として、date、if-modified-since、referrerまたはuser-agentがあります。(dateヘッダーは通常は日付タイプですが、文字列として返されます。)

  4. Cookies - HTTPリクエストのCookieに一致する属性名はリクエストのCookie名と同じです。名前は文字列として返され、大/小文字は区別されません。返されるCookieの値はアプリケーション固有であり、さらにデコードする必要がある可能性があります。


注意:

サーブレット属性、URL問合せパラメータ、HTTPリクエスト・ヘッダーまたはCookieの名前が衝突する場合、ポリシーの制約では1つの属性のみ使用可能です。

9.4.4.4 JDBCリソース

Java Database Connectivity (JDBC)リソースは、JDBCに関連するWebLogic Serverリソースです。サービスまたはアプリケーションとしてデプロイされているJDBCリソースを保護できます。JDBCデータベース・アクセスを保護するには、すべてのデータソースに対して集団的、個別のデータソースおよび複数のデータソースに認可ポリシーを作成します。例9-11に、MyJDBCConnectionPoolという名前のJDBCリソースをWebLogic Server構成ファイルconfig.xmlで定義する方法を示します。

例9-11 config.xmlのJDBCリソースの定義

<JDBCConnectionPool DriverName="oracle.jdbc.driver.OracleDriver"
            Name="MyJDBCConnectionPool"
            PasswordEncrypted="{3DES}B2Bl+tp70Eh3D1pT53/anw=="
            Properties="user=wles" Targets="myserver"
            TestTableName="SQL SELECT 1 FROM DUAL"
            URL="jdbc:oracle:thin:@localhost:1521:ASI"/>
<JDBCTxDataSource JNDIName="MyDataSource"
            Name="MyJDBCDataSourceName"
            PoolName="MyJDBCConnectionPool"
            Targets="myserver"/>

表9-9は、JDBCリソースMyJDBCConnectionPoolを保護する場合にOracle Entitlements Serverオブジェクトに名前を付ける方法を示します。これらの値は、Oracle Entitlements Server管理コンソールでオブジェクトが作成される際に定義されます。

表9-9 Oracle Entitlements ServerオブジェクトにマップされたJDBC値

OESオブジェクト名 JDBC値

アプリケーション

JDBCリソースは特定のアプリケーションには属しません。このような場合、アプリケーションの名前のかわりにsharedが使用されます。アプリケーションsharedは、管理コンソールでアプリケーションが作成される際に定義されます。

リソース・タイプ

値として、サポートされているいずれかのリソース・タイプを使用します(この場合はjdbc)。

リソースの親

値として、モジュール名(存在する場合)とプール・タイプ(ConnectionPoolまたはMultiPool、この場合はConnectionPool)を使用します。

リソース

値として、config.xmlで定義されているJDBC名を使用します。この場合はMyJDBCConnectionPoolです。


Oracle Entitlements Serverを使用するJDBCリソースのポリシー・オブジェクトの作成方法を示すために、ExternalApplicationロールのメンバーにExternalDataPoolという名前の接続プールのJDBC接続をreserveする(開く)権限を付与する必要があると仮定します。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = shared

  • リソース・タイプ = jdbc

  • リソース = ConnectionPool/ExternalDataPool

  • アクション = reserve


次に示す2番目のオブジェクト・グループは、管理ロールのメンバーに、SystemJdbcPoolという名前のリソースを除く任意のJDBCリソースをシャットダウンする権限を付与するポリシーで使用されます。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = shared

  • リソース・タイプ = jdbc

  • リソース = ConnectionPool/ExternalDataPool

  • アクション = admin

  • 条件 = if Not resource="SystemJdbcPool"

reserveアクションとadminアクションは認可ポリシーの一部であって、認可ポリシーのアクションではないことに注意してください。リソース・タイプに対して許可されるすべてのアクションは常に、リソース・タイプ・プロファイルの一部として定義されます。ポリシー・アクションは常にGRANTまたはDENYです。表9-10では、JDBCリソースに対して実行でき、そのためにリソース・タイプのアクションとして定義する必要がある特定のアクションについて説明します。

表9-10 JDBCリソースのアクション・オプション

アクション名 操作

admin

管理操作(clearStatementCache、suspend、forceSuspend、resume、shutdown、forceShutdown、start、getPropertiesおよびpoolExistsなど)を実行するためのアクション。

reserve

データソースをルックアップしてgetConnectionをコールすることによってデータソースで接続を予約するアクション。

shrink

データソースの接続数を縮小するアクション。

reset

すべての物理データベース接続をシャットダウンして再確立することによって、データソース接続をリセットするアクション。


例9-12は、事前定義済JDBCリソースを使用するサンプル・コードです。データソース・インスタンスのgetConnection()メソッドをコールします。これにより認可の確認が開始され、//app/policy/AppParentNode/shared/jdbc/ConnectionPool/MyJDBCConnectionPoolリソースに対するreserveアクションが確認されます。

例9-12 JDBCリソースに対する認可の開始

javax.naming.InitialContext initialContext = new javax.naming.InitialContext();
javax.sql.DataSource ds = (javax.sql.DataSource) 
initialContext.lookup("MyDataSource");
java.sql.Connection conn = ds.getConnection();
PreparedStatement statement = 
conn.prepareStatement("SELECT accountName FROM accounts WHERE balance < 0");
ResultSet result = statement.executeQuery();
if (result.next()) {
    String accountName = result.getString(1);
    System.out.println("The first account with negative balance is " + accountName);
}

表9-11に、認可ポリシーで条件の一部として使用できる、JDBCリソースでサポートされている動的属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。

表9-11 JDBCリソースによりサポートされている動的属性

属性名 要素

application

リソースをホストするアプリケーションの名前

module

リソースが属するモジュールの名前

category

リソース・タイプ(ConnectionPool | MultiPool)

resource

リソースの名前

action

JDBC操作名(admin | reserve | shrink | reset)



注意:

条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。

9.4.4.5 JMSリソース

Java Messaging Service (JMS)リソースは、JMSに関連するWebLogic Serverリソースです。サービスまたはアプリケーションとしてデプロイされているJMSリソースを保護できます。JMS宛先を保護するには、すべての宛先(JMSキューとJMSトピック)に対して集団的または個別(JMSサーバー上の1つのJMSキューまたはJMSトピック)に認可ポリシーを作成します。表9-12は、JMSリソースを保護する場合にOracle Entitlements Serverオブジェクトに名前を付ける方法を示します。これらの値は、Oracle Entitlements Server管理コンソールでオブジェクトが作成される際に定義されます。

表9-12 Oracle Entitlements ServerオブジェクトにマップされたJMS値

OESオブジェクト名 JMS値

アプリケーション

JMSリソースは特定のアプリケーションには属しません。このような場合、アプリケーションの名前のかわりにsharedが使用されます。アプリケーションsharedは、管理コンソールでアプリケーションが作成される際に定義されます。

リソース・タイプ

値として、サポートされているいずれかのリソース・タイプを使用します(この場合はjms)。

リソースの親

宛先タイプ(topicまたはqueue)

リソース

リソース名


例9-13では、MyJMSQueueという名前のJMSキューをWebLogic Server構成ファイルconfig.xmlで構成します。

例9-13 config.xmlのJMSキュー・リソースの定義

<JMSServer Name="WSStoreForwardInternalJMSServermyserver"
           Store="FileStore" Targets="myserver">
  <JMSQueue CreationTime="1150241964468"
           JNDIName="JMSQueue" Name="MyJMSQueue"/>
</JMSServer>
 
<JMSConnectionFactory JNDIName="JmsConnectionFactory"
          Name="MyJMSConnectionFactory" Targets="myserver"/>

例9-14は、事前宣言済JMSキューを使用するJMSクライアントを示します。クライアントは、MyJMSQueueにテキスト・メッセージを送信します。

例9-14 JMSクライアントの例

//Instantiate the inital context
javax.naming.InitialContext initialContext = new javax.naming.InitialContext();
 
//Look up the JMS connection factory and the message queue
Queue messageQueue = (Queue) initialContext.lookup("JMSQueue");
JMSConnectionFactory factory =
    (JMSConnectionFactory) initialContext.lookup("JmsConnectionFactory");
 
//Create the queue connection and session
QueueConnection queueConnection = factory.createQueueConnection();
QueueSession session =
    queueConnection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE);
 
//Create a text message
TextMessage textMessage = session.createTextMessage();
textMessage.setText("Hello from the client!");
 
//Send message to the queue
QueueSender sender = session.createSender(messageQueue);
sender.send(textMessage);

JMSリソースの認可ポリシーの作成方法を示すために、クライアント・ロールのメンバーにFeedbackQueueという名前のJMSキューにメッセージを送信する権限を付与する必要があると仮定します。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = shared

  • リソース・タイプ = jms

  • リソース = queue/FeedbackQueue

  • アクション = send

  • ロール = Client

次の2番目の認可ポリシーでは、FeedbackProcessorユーザーにFeedbackQueueという名前のJMSキューからメッセージを受信する権限を付与します。

  • アプリケーション = shared

  • リソース・タイプ = jms

  • リソース = queue/FeedbackQueue

  • アクション = send

  • ユーザー = myusers/FeedbackProcessor

アクション(sendとreceive)は認可ポリシーの一部であることに注意してください。ポリシーの結果は常にGRANTまたはDENYです。表9-13では、JMSリソースに対して実行できる特定のアクションについて説明します。

表9-13 JMSリソースのアクション・オプション

アクション 説明

send

キューまたはトピックにメッセージを送信するために必要です。これには、MessageProducer.send()QueueSender.send()およびTopicPublisher.publish()の各メソッドのコールが含まれます。

receive

キューまたはトピックにコンシューマを作成するために必要です。これには、Session.createConsumer()、Session.createDurableSubscriber()、QueueSession.createReceiver()、TopicSession.createSubscriber()、TopicSession.createDurableSubscriber()、Connection.createConnectionConsumer()、Connection.createDurableConnectionConsumer()、QueueConnection.createConnectionConsumer()、TopicConnection.createConnectionConsumer()およびTopicConnection.createDurableConnectionConsumer()の各メソッドのコールが含まれます。

browse

QueueBrowserインタフェースを使用してキューのメッセージを表示するために必要です。


表9-14に、認可ポリシーで条件の一部として使用できる、JMSリソースでサポートされている属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。

表9-14 JMSリソースによりサポートされている動的属性

属性名 説明

application

リソースをホストするアプリケーションの名前

destinationtype

JMS宛先タイプ(queue | topic)

resource

リソースの名前

action

JDBC操作名(send | receive | browse)



注意:

条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。

9.4.4.6 Webサービス・リソース

Webサービス・リソースは、Webサービスに関連するWebLogic Serverリソースです。Webサービスを保護するには、Webサービス・リソース全体、Webサービス・リソース操作のサブセット、Webサービス・リソースを実装しているステートレス・セッションEJB、またはステートレス・セッションEJB内のメソッドのサブセットに対する認可ポリシーを作成します。例9-15に、BasicWS_Componentという名前のWebサービス実装が含まれるBasicWSという名前のWebアプリケーションの構成を示します。

例9-15 Webアプリケーションの構成

<application Name="BasicWS"
             Path="applications/BasicWS.ear"
             StagedTargets="myserver"
<WebServiceComponent Name="BasicWS_Component"
                     Targets="myserver"
                     URI="BasicWS.war"/>
</application>

例9-16に、BasicWS.ear内のapplication.xmlファイルのWebアプリケーション・コンテキストの定義を示します。

例9-16 Webアプリケーション・コンテキストの構成

<module>
  <web>
    <web-uri>basic_javaclass.war</web-uri>
    <context-root>myservices</context-root>
  </web>
</module>

例9-17に、HelloWorldという名前のWebサービスの構成を示します。これは、WebアプリケーションWARファイル内のweb-services.xmlディスクリプタ・ファイルで定義されています。

例9-17 Webサービスの構成

<web-services>
  <web-service useSOAP12="false"
               name="HelloWorld"
               style="rpc"
               uri="/HelloWorld">
   <operations>
    <operation name="sayHello"
        method="sayHello(int,java.lang.String)"/>
   </operations>
  </web-service>
</web-services>

表9-15は、Webリソースを保護する場合にOracle Entitlements Serverオブジェクトに名前を付ける方法を示します。これらの値は、Oracle Entitlements Server管理コンソールでオブジェクトが作成される際に定義されます。

表9-15 Oracle Entitlements ServerオブジェクトにマップされたWebサービス値

OESオブジェクト名 Webサービス値

アプリケーション

web-services.xmlファイルで定義されているアプリケーションの名前(この場合はBasicWS)。

リソース・タイプ

値として、サポートされているいずれかのリソース・タイプを使用します(この場合はwebservices)。

リソースの親

値として、application.xml構成ファイルの<context-root>要素で定義されているWebサービスのコンテキスト・パスを使用します(この場合はmyservices)。

リソース

web-services.xmlで定義されているWebサービス名。


HelloWorld WebサービスでsayHello()メソッドをコールするには、クライアントにアクションsayHelloが付与されている必要があります。一部のクライアントは、Webサービスを定義するWeb Services Definition Language (WSDL)ファイルへのアクセス権も必要になる可能性があります。WSDLファイルは、URLリソースとして定義されます。例9-18は、sayHello()メソッドをコールする前にクライアントが定義されたURLにあるWSDLファイルにアクセスできるコードです。

例9-18 WSDLにアクセスするクライアント・コード

String wsdlUrl = "http://localhost:7001//HelloWorld?WSDL";
HelloWorld service = new HelloWorld_Impl(wsdlUrl);   
HelloWorldPort port = service.getHelloWorldPort();
String result = port.sayHello(34, "Josh");

このコードを正常に実行するには、クライアントにWSDLファイル(URLリソース)に対するGET権限が付与されている必要があります。(URLの場合、リソース名が小文字であることに注意してください。)また、クライアントにWebサービス・リソースに対するGET権限が付与されている必要があります。(Webサービスの場合、リソース名は先頭文字が大文字であることに注意してください。)管理コンソールを使用してURLリソース認可ポリシーの次のオブジェクトを作成します。

  • アプリケーション = BasicWS

  • リソース・タイプ = url

  • リソース = myservices/helloworld

  • アクション = GET

  • ロール = SomeUser

管理コンソールを使用してWebサービス・リソース認可ポリシーの次のオブジェクトを作成します。

  • アプリケーション = BasicWS

  • リソース・タイプ = webservices

  • リソース = myservices/HelloWorld

  • アクション = sayHello

  • ロール = SomeUser

アクション(GETとsayHello)は認可ポリシーの一部であることに注意してください。ポリシーの結果は常にGRANTまたはDENYです。

表9-16に、認可ポリシーで条件の一部として使用できる、Webサービス・リソースでサポートされている属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。

表9-16 Webサービス・リソースによりサポートされている動的属性

属性名 説明

application

アプリケーション名

contextpath

Webアプリケーションのコンテキスト・パス

webservice

Webサービスの名前

method

コールされるWebサービス操作の名前

ParamN

メソッドのN番目のパラメータの値(Param1、Param2…など)



注意:

条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。

9.4.4.7 サーバー・リソース

サーバー・リソースにより、WebLogic Serverインスタンスの状態を制御できるユーザーが決まります。ユーザーがJavaコマンドでweblogic.Serverクラスを起動することによってサーバー・インスタンスを起動する場合、サーバー・リソースに対するポリシーは、実行される唯一のセキュリティ・チェックです。ドメイン内のすべてのWebLogic Serverインスタンスまたは個別のサーバーに適用される認可ポリシーを作成できます。例9-19は、myserverという名前のWebLogic Serverインスタンスの構成例です。

例9-19 WebLogic Serverインスタンスの構成

<Server ListenAddress=""
        ListenPort="7001"
        Machine="mymachine"
        Name="myserver"
        NativeIOEnabled="true"
        ReliableDeliveryPolicy="RMDefaultPolicy"
        ServerVersion="8.1.5.0">
    <SSL Enabled="false" HostnameVerificationIgnored="false"
        IdentityAndTrustLocations="KeyStores" Name="myserver"/>
</Server>

表9-17は、サーバー・リソースを保護する場合にOracle Entitlements Serverオブジェクトに名前を付ける方法を示します。これらの値は、Oracle Entitlements Server管理コンソールでエンティティが作成される際に定義されます。

表9-17 Oracle Entitlements Serverオブジェクトにマップされたサーバー・リソース値

OESオブジェクト名 サーバー・リソース値

アプリケーション

サーバー・リソースは特定のアプリケーションには属しません。このような場合、アプリケーションの名前のかわりにsharedが使用されます。アプリケーションsharedは、管理コンソールでアプリケーションが作成される際に定義されます。

リソース・タイプ

値として、サポートされているいずれかのリソース・タイプを使用します(この場合はsvr)。

リソース

サーバー・インスタンス名。


サーバー・リソースの認可ポリシーの作成方法を示すために、管理ロールのメンバーにすべてのWebLogic Serverインスタンスをブートする権限を付与する必要があると仮定します。管理コンソールを使用して次のオブジェクトを作成します。

  • アプリケーション = shared

  • リソース・タイプ = svr

  • リソース = /lib/*

  • アクション = boot

  • ロール = Admin

次の2番目の認可ポリシーでは、管理ロールのメンバーにCentralServerという名前のWebLogic Serverインスタンスをシャットダウンまたは一時停止する権限を付与します。ポリシーは、権限が日曜日または他の曜日の午前2時から午前4時までの間のみ付与されるという点で制約されています。

  • アプリケーション = shared

  • リソース・タイプ = svr

  • リソース = CentralServer

  • アクション = shutdown / suspend

  • ロール = Admin

  • 条件 = 日曜日または他の曜日の午前2時から午前4時までの間のみ

アクション(bootとshutdown/suspend)は認可ポリシーの一部であることに注意してください。ポリシーの結果は常にGRANTまたはDENYです。表9-18では、サーバー・リソースに対して実行できる特定のアクションについて説明します。

表9-18 サーバー・リソースのアクション・オプション

アクション 説明

boot

管理サーバーまたは管理対象サーバーのどちらかのWebLogic Serverインスタンスを起動するために必要なアクション

shutdown

管理サーバーまたは管理対象サーバーのどちらかの実行中のWebLogic Serverインスタンスをシャットダウンするために必要なアクション

suspend

管理サーバーまたは管理対象サーバーのどちらかの実行中のWebLogic Serverインスタンスに対する他のログイン(特権管理アクション以外を目的とするログイン)を禁止するために必要なアクション

resume

管理サーバーまたは管理対象サーバーのどちらかの実行中のWebLogic Serverインスタンスへの非特権ログインを再度有効化するために必要なアクション


表9-19に、認可ポリシーで条件の一部として使用できる、サーバー・リソースでサポートされている属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。

表9-19 サーバー・リソースによりサポートされている動的属性

属性名 説明

server

リソースが関連付けられているサーバーの名前

action

サーバー・インスタンスに対して実行される操作の名前(boot | shutdown | suspend | resume)



注意:

条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。

9.5 Oracle WebCenter Contentのリソースの保護

Oracle Entitlements Serverは、Oracle WebCenter Contentと統合して、Enterprise Content Managementに対して高いパフォーマンスのファイングレイン・アクセス・コントロールを提供できます。

統合後に、Oracle Entitlements Serverは、表9-20に要約されている制御を提供します。

表9-20 Oracle WebCenter Contentのサポートされているドキュメントの操作

WebCenter Contentのドキュメントの操作 説明 Oracle Entitlements Serverの制御

チェックイン

ドキュメントの新しいリビジョンの作成

ドキュメントのチェックイン操作の実行者

新規チェックイン

新しいドキュメントのアップロード

新しいドキュメントのチェックイン操作の実行者

類似をチェックイン

新規チェックインと同様です。前回の新しいドキュメントのアップロードで設定されたプロパティを継承

チェックインと同様のドキュメント操作の実行者

チェックアウト

変更のための既存ドキュメントのチェックアウト

ドキュメントのチェックアウト操作の実行者

チェックアウトを元に戻す

チェックアウト済ドキュメントの破棄

ドキュメントのチェックアウト操作の破棄の実行者

削除

ドキュメントのリビジョンの削除

ドキュメントの削除操作の実行者

更新

ドキュメントのメタデータまたは属性の更新

ドキュメントの更新操作の実行者

検索

ドキュメントの検索操作の実行

ドキュメント検索結果でユーザーに表示される結果

読取り

ドキュメントのコンテンツの読取り

ドキュメントの読取り操作の実行者

ダウンロード

ドキュメントのダウンロード

ドキュメントのダウンロード操作の実行者


Oracle Entitlements Serverでは、次の制御も提供されます。

  • WebCenter Contentのドキュメントおよびコンテンツに対するロール・ベースのアクセス制御

  • WebCenter Contentのドキュメントおよびコンテンツに対する属性ベースのアクセス制御

  • WebCenter Contentでの検索操作は、アクセス付与によって許可されるコンテンツに制限されます

この項では、Oracle Entitlements ServerとOracle WebCenter Contentの統合手順を説明します。

9.5.1 システム要件および動作保証の確認

インストールを実行する前に、 システム要件および動作保証のドキュメントを読み、インストールする製品の最小インストール要件を環境が満たしていることを確認します。

  • Oracle Fusion Middlewareのシステム要件と仕様

    このドキュメントには、ハードウェアとソフトウェアの要件、最小ディスク領域とメモリーの要件、および必要なシステム・ライブラリ、パッケージまたはパッチに関する情報が含まれます。

  • Oracle Fusion Middlewareのサポートされるシステム構成

    このドキュメントには、サポートされるインストール・タイプ、プラットフォーム、オペレーティング・システム、データベース、JDKおよびサード・パーティ製品に関する情報が含まれます。

  • インストール時に発生する可能性がある相互運用性および互換性の問題については、『Oracle Fusion Middleware相互運用および互換性ガイド』を参照してください。

    Oracle Fusion Middleware製品が旧バージョンの他のOracle Fusion Middleware、Oracleまたはサード・パーティ製品と機能するために重要な情報がこのマニュアルに記載されています。この情報は、既存の環境をアップグレードする既存ユーザーと新しいOracle Fusion Middlewareユーザーの両方に適用されます。

9.5.2 Oracle WebCenter ContentディレクトリおよびOracle Entitlements Serverディレクトリの用語

この項では、Oracle Entitlements ServerおよびOracle WebCenter Contentの統合に関連するディレクトリの変数を参照する際に次の用語を使用します。

  • MW_HOME: Oracle WebLogic Serverホーム、およびオプションでOracle Commonホームおよび1つ以上のFusion Middlewareスイート固有のOracleホームのコンテナ。Oracle WebLogic Serverをインストールすると、Oracle WebLogic Server Installerによってミドルウェア・ホーム・ディレクトリ(MW_HOME)が作成されます。このディレクトリには、Oracle WebLogic Serverホーム・ディレクトリ(WL_HOME)、およびFusion Middleware ControlとJava Required Files (JRF)に必要なバイナリ・ファイルとライブラリ・ファイルが格納されたOracle共通ホーム・ディレクトリ(ORACLE_COMMON_HOME)があります。

  • IAM_Home: Oracle Identity Manager、Oracle Access Management、Oracle Adaptive Access Manager、Oracle Entitlements Server、Oracle Identity Navigator、Oracle Privileged Account ManagerおよびOracle Access Management Mobile and Socialが含まれるMiddlewareホームで作成されるOracleホーム・ディレクトリ。このOracleホーム・ディレクトリには任意の名前を指定できます。

  • ORACLE_HOME: 特定のOracle Fusion Middlewareソフトウェア・スイートに必要なバイナリ・ファイルおよびライブラリ・ファイルが含まれるホーム・ディレクトリ。

  • MW_HOME/Oracle_ECM1: デフォルトのWebCenter ContentのOracleホーム。

  • UCM_DOMAIN_HOME: アプリケーション・サーバー上で実行するためにOracle WebCenter Contentアプリケーションがデプロイされる、ユーザー指定のディレクトリ。UCM_DOMAIN_HOME/ucm/cs/binディレクトリには実行可能ファイルがあります。UCM_DOMAIN_HOMEのデフォルトの場所はMW_HOME/user_projects/domains/base_domainですが、このパスとドメイン名(base_domain)は、アプリケーション・サーバーにOracle WebCenter Contentアプリケーションをデプロイするときに変更できます。

  • OES_CLIENT_HOME: OESクライアント・インストールを保存するOracleホーム・ディレクトリ。

  • RCU_HOME: リポジトリ作成ユーティリティ(RCU)の一時的なステージング・ディレクトリ。

9.5.3 統合ロードマップ

表9-21は、Oracle Entitlements ServerおよびOracle WebCenter Contentの統合のための大まかなタスクをリストしたものです。

表9-21 統合ロードマップ

番号 タスク 情報

1.

Oracle Entitlements Serverをインストールおよび構成します。

詳細は、9.5.4項「Oracle Entitlements Serverのインストールと構成」を参照してください。

2.

WebCenter Contentをインストールおよび構成します。

詳細は、9.5.5.1項「Oracle WebCenter Contentのインストール」を参照してください。

3.

WebCenter Contentスキーマを作成します。

詳細は、9.5.5.2項「Oracle WebCenter Contentスキーマの作成」を参照してください。

4

WebCenterドメインを作成します。

詳細は、9.5.5.3項「WebCenterドメインの作成」を参照してください。

5.

ドメインでサーバーを起動します。

詳細は、9.5.5.4項「WebCenterドメインでのサーバーの起動」を参照してください。

6.

WebCenter Contentを構成します。

詳細は、9.5.6項「WebCenter Contentの構成」を参照してください。

7.

base_domainからキーをエクスポートします。

詳細は、9.5.7.1項「base_domainからのキーのエクスポート」を参照してください。

8.

WebCenter Contentドメインでデータソースを作成します。

詳細は、9.5.7.2項「Oracle WebCenter Contentドメインでのデータソースの作成」を参照してください。

9.

WebCenter Contentドメインのセキュリティ・ストアを再関連付けします。

詳細は、9.5.7.3項「Oracle WebCenter Contentドメインのセキュリティ・ストアの再関連付け」を参照してください。

10.

jps-config.xmlを更新します。

詳細は、9.5.7.4項「Oracle WebCenter Contentドメインのjps-config.xmlの更新」を参照してください。

11.

config.cfgファイルを更新します。

詳細は、9.5.7.5項「config.cfgファイルの更新」を参照してください。

12.

JREに権限を追加します。

詳細は、9.5.7.6項「WebCenter Content Version 11.1.1.7.0以前のJREへの権限の追加」を参照してください。

13.

OES-WebCenter Contentコネクタをインストールします。

詳細は、9.5.7.7項「OES-WebCenter Contentコネクタのインストール」を参照してください。

14.

統合時のOracle Entitlements Serverを構成します。

詳細は、9.5.7.8項「統合時のOracle Entitlements Serverの構成」を参照してください。

15.

アプリケーションを配布します。

詳細は、9.5.7.9項「UCMアプリケーションの配布」を参照してください。

16.

統合を確認します。

詳細は、9.5.7.10項「Oracle WebCenter Contentの動作確認」を参照してください。


9.5.4 Oracle Entitlements Serverのインストールと構成

『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』の「Oracle Entitlements Serverのインストールと構成」の手順に従ってOracle Entitlements Serverをインストールおよび構成します。

表9-22に、Oracle Entitlements Serverのインストールでの高レベルのタスクをリストします。

表9-22 Oracle Entitlements Serverのインストールおよび構成

番号 タスク 情報

1.

Oracle WebLogic ServerのインストールおよびOracleミドルウェア・ホームを作成します。

WebLogic Serverをインストールする前に、ご使用のマシンがシステム、パッチ、カーネルおよびその他の要件を満たしていることを確認します。

WebLogic Serverおよびミドルウェア・ホームの要件の詳細は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のWebLogic Serverおよびミドルウェア・ホームの要件に関する項を参照してください。

Oracle WebLogic Serverのインストールの詳細は、『Oracle Fusion Middleware Oracle WebLogic Serverインストレーション・ガイド』を参照してください。

2.

Oracle Databaseをインストールします。

Oracle Identity and Access Managementをインストールする前に、Oracle Databaseがシステムにインストールされていることを確認してください。関連するOracle Identity and Access Managementコンポーネントをインストールするには、データベースが稼働している必要があります。

詳細は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のデータベースの前提条件に関する項を参照してください。

保証されたデータベースの詳細は、Oracle Identity and Access Management 11gリリース2 (11.1.2)のOracle Fusion Middlewareのシステム要件と仕様のドキュメントのデータベース要件に関するトピックを参照してください。

3.

リポジトリ作成ユーティリティを使用して、Oracle Entitlements Server用に新しいスキーマを作成します。

注意: RCUを実行する前に、データベースが実行されている必要があります。

リポジトリ作成ユーティリティをインストールし、データベース内にOracle Entitlements Server用のスキーマを作成するために実行します。インストールしている製品とバージョン互換性のあるリポジトリ作成ユーティリティを使用する必要があります。

注意: Oracle Identity and Access Management 11gリリース2 (11.1.2.2.0)コンポーネントのデータベース・スキーマを作成するには、Oracle Fusion Middlewareリポジトリ作成ユーティリティの11gリリース2 (11.1.2.2.0)のバージョンを使用する必要があります。

「コンポーネントの選択」で、OES関連のスキーマ(「AS共通スキーマ - Oracle Platform Security Services」)のみを選択します。これを選択すると、「AS共通スキーマ - Metadata Services」が自動的に選択されます。オプションで、「AS共通スキーマ - 監査サービス」を選択できます。

Oracle Fusion Middlewareリポジトリ作成ユーティリティ(RCU)はOracle Technology Network (OTN) Webサイトで入手できます。RCUの使用方法の詳細は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のOracle Fusion Middlewareリポジトリ作成ユーティリティ(RCU)を使用したデータベース・スキーマの作成に関する項および『Oracle Fusion Middleware Repository Creation Utilityユーザーズ・ガイド』を参照してください。

Oracle DatabaseのRCU要件の詳細は、Oracle Identity and Access Management 11gリリース2 (11.1.2)のOracle Fusion Middlewareのシステム要件と仕様のドキュメントでOracle DatabaseのRCU要件に関する項を参照してください。

4.

Oracle Entitlements Server管理サーバーをインストールします。

Oracle Entitlements Serverは、Oracle Identity and Access Management Suiteに含まれています。Oracle Identity and Access Management Suiteをインストールするには、Oracle Identity and Access Management 11gインストーラを使用します。

注意: Oracle Identity and Access Managementをインストールする場合、Oracle Entitlements Serverの管理サーバーのみがインストールされます。Oracle Entitlements Serverクライアントを別々にインストールおよび構成を行う必要があります。

Oracle Entitlements Server管理サーバーのインストール手順については、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のOracle Entitlements Server管理サーバーの構成に関する説明を参照してください。

5.

Oracle Entitlements Server管理サーバーのドメインを作成および構成します。

OES管理ソフトウェアのインストール後に、OES管理ドメインを含むドメインを作成し、それをデータベース・セキュリティ・ストアで動作するように構成する必要があります。

Oracle Fusion Middleware構成ウィザードを使用して、WebLogicドメインを作成するか、既存のドメインを拡張します。IAM_HOME/common/bin/config.shスクリプト(UNIXの場合)またはIAM_HOME\common\bin\config.cmd (Windowsの場合)を実行することでOracle Fusion Middleware構成ウィザードを起動します。

「ドメイン・ソースの選択」画面で、「管理サーバー用のOracle Entitlements Server - 11.1.1.0 [IAM_HOME]」を選択します。

「ドメイン名と場所の指定」画面で、「ドメイン名」を指定します。たとえば、oes_domainを指定します。

「JDBCコンポーネント・スキーマの構成」画面で、「OPSSスキーマ」を選択して、「スキーマ所有者」(DEV_OPSS)、「スキーマ・パスワード」、「DBDS/サービス」、「ホスト名」および「ポート」の詳細情報を指定します。

新しいWebLogicドメインでのOracle Entitlements Serverの構成手順については、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』の新しいWebLogicドメインでのOracle Entitlements Serverの構成に関する説明を参照してください。

6.

パッチセット・アシスタントを使用したOPSSスキーマをアップグレードします。

Oracle Identity and Access Management (11.1.2.2.0)コンポーネントを構成した後で、RCUを使用して作成したOracle Platform Security Services (OPSS)スキーマをアップグレードする必要があります。

詳細は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のパッチセット・アシスタントによるOPSSスキーマのアップグレードに関する項を参照してください。

7.

セキュリティ・ストア用にデータベースを使用するようにOES管理ドメインを構成します。

Oracle Identity and Access Management 11gリリース2(11.1.2.2.0)の各ドメインには、データベース・セキュリティ・ストアを構成する必要があります。Oracle Entitlements Server管理サーバーのセキュリティ・ストアを構成するには、configureSecurityStore.pyスクリプトを実行する必要があります。セキュリティ・ストアは、システムやアプリケーションに固有のポリシー、証明資格およびキーが格納されるリポジトリです。

構成の際に、次の項目を指定します。

  • OES管理ドメインの名前および場所。

  • ドメイン内に構成されているセキュリティ・ストアのデータ・ソース。これはオプションです。デフォルト値はopss-DBDSです。

  • セキュリティ・ストアのファーム名。これはオプションです。

  • OES管理サーバーに関連付けるセキュリティ・ストアのタイプ。これはオプションです。デフォルト値は、DB_ORACLEです。

  • OESセキュリティ・ストアのjpsroot値。これはオプションです。デフォルト値はcn=jpsrootです。

  • ツールを作成するか、削除するか、OESデータベース・セキュリティ・ストアに結合するかを示すツール・モード。

  • ドメインの構成モード。

  • 暗号化鍵ファイルが含まれているディレクトリ。

  • OPSSスキーマのユーザー名。

  • OESデータベースのパスワード。

セキュリティ・ストアの構成手順については、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のOracle Entitlements Server管理サーバーのセキュリティ・ストアの構成に関する説明を参照してください。

8.

Oracle Entitlements Serverのインストールを検証します。

インストールが成功したことを検証するには、新しく作成したOES管理ドメインを起動して、管理コンソールにログインします。

http://hostname:port/apm/

ここで、hostnameは管理サーバーのDNS名またはIPアドレス、portは管理サーバーがリクエストをリスニングしているポートのアドレスです。これらの値は、AdminServer.logファイルから取得できます。

AdminServer.logファイルは、MW_HOME/user_projects/domains/domain_name/servers/AdminServer/logsディレクトリ(UNIXの場合)またはMW_HOME\user_projects\domains\domain_name\servers\AdminServer\logsディレクトリ(Windowsの場合)に存在します。

ログインが成功した場合、インストール・プロセスは成功しています。

インストールの検証手順については、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のOracle Entitlements Server管理サーバーの構成の検証に関する説明を参照してください。

9.

OES SMクライアントをインストールします。

Oracle Entitlements Serverクライアント・ソフトウェアをインストールする前に、Oracle Entitlements Server管理サーバーのインストールと構成を完了しておきます。

Oracle Entitlements Server Client 11gソフトウェアの入手に関する詳細は、Oracle Fusion Middlewareのダウンロード、インストールおよび構成のReadMeを参照してください。

Oracle Entitlements Serverクライアントをインストールするには、oesclient.zipのコンテンツをローカル・ディレクトリに解凍し、次インストーラを起動します。

Oracle Entitlements Serverクライアントのインストール手順については、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のOracle Entitlements Serverクライアントのインストールに関する説明を参照してください。

10.

OPatchを使用して、oracle_commonディレクトリにパッチを適用します。

Oracle Entitlements Serverクライアント・ソフトウェアをOracle Entitlements Server管理サーバーとは別のミドルウェア・ホームにインストールしている場合は、Oracle Entitlements Serverクライアント・ソフトウェアのインストール後、OPatchを使用してoracle_commonディレクトリにパッチを適用する必要があります。

このパッチは、次のセキュリティ・モジュール構成に対してのみ適用します。

  • JRF環境でのWebLogic Serverセキュリティ・モジュール

  • JRF環境でのOracle WebLogic ServerドメインのWebサービス・セキュリティ・モジュール

  • JRF環境でのWebSphereセキュリティ・モジュール

  • Oracle Service Busセキュリティ・モジュール

パッチの適用手順は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のOPatchによるパッチの適用に関する項を参照してください。

11.

OESクライアントのSMインスタンスを構成します。

OES SMインスタンスの作成要件は、作成したSMのタイプによって異なります。

OESクライアントのインスタンスの構成手順については、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』のOracle Entitlements Serverクライアントの構成に関する説明を参照してください。


9.5.5 Oracle WebCenter Contentのベース・インストール

この項では、単一ホスト上のOracle WebLogic Serverドメイン内にOracle WebCenter Contentをインストールする手順を説明します。次の手順は、Oracle WebCenter Contentを初めてインストールする手順です。

WebCenter Contentのベース・インストールは次のタスクから構成されます。

9.5.5.1 Oracle WebCenter Contentのインストール

WebCenter Contentをインストールするには、次の手順を実行します。

  1. 次のように、Oracle WebCenter Contentメディアのディスク1からOracle Fusion Middleware 11g WebCenter Content Installerを起動します。

    (UNIX) wc_content_media_loc/Disk1/runInstaller -jreLoc jre_location
    (Windows)  wc_content_installer_loc/Disk1/setup.exe -jreLoc jre_location
    
  2. 「ようこそ」画面で「次へ」をクリックします。

  3. 「ソフトウェア更新のインストール」画面では、「ソフトウェアの更新のスキップ」を選択してから、「次へ」をクリックしてインストールを続行します。

  4. 「前提条件チェック」画面で、エラーがなければ「次へ」をクリックしてインストールを続行します。

    前提条件のエラーを修正する際にインストール・プロセスを停止する場合は、「中止」をクリックします。

    エラーを修正しないでインストールを続行する場合は、「続行」をクリックします。

  5. 「インストール場所の指定」画面で、「Oracleミドルウェア・ホーム」および「Oracleホーム・ディレクトリ」を指定して、「次へ」をクリックします。

    • Oracleミドルウェア・ホーム: Oracle WebLogic Serverのインストール時に作成されたミドルウェア・ホーム・ディレクトリ(MW_HOME)を選択します。たとえば、/opt/oracle/Middlewareを選択します。

    • Oracleホーム・ディレクトリ: Oracle WebCenter Contentをインストールするディレクトリ(Oracle_ECM1)を指定します。

  6. 「アプリケーション・サーバー」画面で、「WebLogic Server」を選択し、「次へ」をクリックします。

  7. 「インストール・サマリー」画面で、「インストール」クリックしてインストールを開始します。

  8. 「インストールの進行状況」画面で、インストールが100%完了したら「次へ」をクリックします。

  9. 「インストール完了」画面で「終了」をクリックします。

9.5.5.2 Oracle WebCenter Contentスキーマの作成

Oracle WebCenter Contentでは、アプリケーションの構成前に、アプリケーションのスキーマがデータベースに存在する必要があります。データベースにコンポーネント・スキーマを作成するには、リポジトリ作成ユーティリティ(RCU)を実行する必要があります。RCUを実行する前に、データベースが起動され実行中である必要があります。

リポジトリ作成ユーティリティ(RCU)は、次の場所にあるOracle Technology Network (OTN) Webサイトで入手できます。

http://www.oracle.com/technology/software/products/middleware

WebCenter Contentのスキーマを作成するには、次の手順を実行します。

  1. データベースが起動し、稼働していることを確認します。

  2. .zipファイルのダウンロード後、選択したディレクトリにコンテンツを解凍します(このディレクトリをRCU_HOMEディレクトリと呼びます)。

  3. RCU_HOMEディレクトリ内のbinディレクトリからRCUを起動します。

    cd RCU_HOME/bin
    ./rcu
    
  4. 「ようこそ」画面で「次へ」をクリックします。

  5. 「リポジトリの作成」画面で、「作成」をクリックし、「次へ」をクリックします。

  6. 「データベース接続の詳細」画面で、データベースの接続の詳細を指定して、「次へ」をクリックします。エラーなしでデータベースのチェックをパスしたら、「OK」をクリックしてこのダイアログ・ウィンドウを閉じ、次の画面に進みます。

    データベース・タイプ: デフォルトの「Oracle Database」を選択したままにしておきます。

    Oracle Databaseインスタンスに接続するために、次の情報を入力します。

    • ホスト名: identity.example.comの形式でデータベースが存在するマシンの名前を指定します。

    • ポート: データベースのリスニング・ポート番号を指定します。Oracle Databaseインスタンスのデフォルトのポート番号は1521です。

    • サービス名: データベース・サービスのサービス名(たとえば、orcl.example.com)を指定します。通常、サービス名はグローバル・データベース名と同じです。

      データベースのサービス名が不明な場合は、データベースの初期化パラメータ・ファイルのSERVICE_NAMESパラメータから取得できます。このファイルにSERVICE_NAMESパラメータが含まれていない場合、サービス名はDB_NAMEDB_DOMAINパラメータに指定されているグローバル・データベース名と同じです。また、サービス名を調べる別の方法として、データベースにSYSとしてログインし、次のコマンドを実行する方法もあります。

      show parameter service_name 
      
    • ユーザー名:データベース管理者の名前を指定します。

      SYSDBA権限を持つOracle Databaseユーザーの名前を指定します。SYSDBA権限を持つデフォルトのユーザー名は、SYSです。

    • パスワード: データベース・ユーザーのパスワードを指定します。

    • ロール: リストからデータベース・ユーザーのロールを選択します。SYSにはSYSDBAロールが必要です。

  7. 「コンポーネントの選択」画面で、スキーマの接頭辞を指定します。たとえば、WCの場合、「コンポーネント」列で「WebCenter Content」を展開して、「Oracle WebCenter Content Server - 完全」を選択します。「次へ」をクリックします。「コンポーネント前提条件の確認中」ダイアログ・ボックスが表示されます。エラーが発生せずにチェックが完了したら、「OK」をクリックしてダイアログ・ボックスを閉じ、次の画面に進みます。

    WebCenter Contentのスキーマを作成する場合は、「Oracle WebCenter Content Server - 完了」を選択します。

  8. 「スキーマ・パスワード」画面で、スキーマ所有者のパスワードを指定します。開発システムでは、「すべてのスキーマに同じパスワードを使用」を選択できます。「次へ」をクリックします。

    注意: 後でアプリケーションを構成するときに必要になるため、この画面のスキーマのパスワードを記録します。

  9. 「表領域のマップ」画面で、作成するスキーマの目的の表領域マッピングを構成して、「次へ」をクリックします。

    たとえば、次のように入力します。

    • コンポーネント: Oracle WebCenter Content Server - Complete

    • スキーマ所有者: WC_OCS

    • デフォルト表領域: *WC_OCS

    • 一時表領域: *OCS_TEMP

    別のダイアログ・ウィンドウが開き、これらの表領域の作成を確認するように求められます。「OK」をクリックして先に進み、このダイアログ・ウィンドウを閉じます。表領域作成の進行状況を示す2番目のダイアログ・ウィンドウが表示されます。この処理が完了したら、「OK」をクリックしてこのウィンドウを閉じ、次の画面に進みます。

  10. 「サマリー」画面で、この画面の情報を確認し、「作成」をクリックしてスキーマの作成を開始します。

  11. 「完了サマリー」画面で、ログ・ファイルの場所を書き留め、「閉じる」をクリックして画面を終了します。

手順の詳細は、Oracle WebCenter Contentクイック・インストレーション・ガイドを参照してください。

9.5.5.3 WebCenterドメインの作成

インストーラの実行およびアプリケーション・スキーマの作成が成功した後、次のOracle WebCenter Content製品をアプリケーションとしてデプロイおよび構成できます。

  1. 構成スクリプトでOracle Fusion Middleware 11g WebCenter Content Installerを起動します。

    (UNIX) MW_HOME/Oracle_ECM1/common/bin/config.sh
    (Windows)  MW_HOME\Oracle_ECM1\common\bin\config.cmd
    
  2. 「ようこそ」画面で「新しいWebLogicドメインの作成」を選択し、「次へ」をクリックします。

  3. 「ドメイン・ソース」画面で、「Oracle Universal Content Management - Content Server 11.1.1.0 [Oracle_ECM1]」を選択し、「次へ」をクリックします。

  4. 「ドメイン名と場所の指定」画面で、次の項目を指定します。

    • ドメイン名 :作成するドメインの名前。

    • ドメインの場所: ドメインの場所。たとえば、/opt/oracle/Middleware/user_projects/domainsを指定します。

    • アプリケーションの場所: デプロイするアプリケーションの場所。たとえば、/opt/oracle/Middleware/user_projects/applicationsを指定します。

    次に、「次へ」をクリックします。

  5. 「管理者ユーザー名およびパスワードの構成」画面で、次の項目を指定します。

    • 「ユーザー名」: デフォルトの管理ユーザー名weblogic。必要に応じて、別の管理ユーザー名に変更できます。

    • ユーザー・パスワード: 管理者ユーザーのパスワード。

    次に、「次へ」をクリックします。

  6. 「サーバーの起動モードおよびJDKの構成」画面で次の操作を行います。

    • 「WebLogicドメインの起動モード」の下で、「開発モード」を選択したままにしておきます。

    • 「JDKの選択」の下で、「使用可能なJDK」およびデフォルトのJDK (開発モードではSun SDK 1.6.0_29か、64ビット・システムの場合はユーザーがインストールしたJDK)を選択したままにしておきます。

    次に、「次へ」をクリックします。

  7. 「JDBCコンポーネント・スキーマの構成」画面で、コンポ―ネント・データソースのスキーマ情報を構成します。この画面上のフィールドに加えた変更は、選択したデータソースに対して適用されます。

    次に例を示します。

    • ベンダー: Oracle

    • ドライバ: *Oracleのサービス接続用ドライバ(Thin)

    • スキーマ所有者: WC_OCS

    • DBMS/サービス: orcl.example.com

    • ホスト名: identity.example.com

    • ポート: 1521

    「UCMスキーマ」を選択します。次に、「次へ」をクリックします。

  8. 「コンポーネント・スキーマのテスト」画面で、「UCMスキーマ」を選択して、データソースに接続できたことを確認し、「次へ」をクリックします。

  9. 「オプションの構成を選択」画面で、「管理サーバー」および「管理対象サーバー、クラスタ、およびマシン」を選択して、「次へ」」をクリックします。

  10. 「管理サーバーの構成」画面で、「SSL有効」を選択し、フィールドに入力します。

    たとえば、次のように入力します。

    • 名前: AdminServer

    • リスニング・アドレス: All Local Addresses

    • リスニング・ポート: 8001

    • SSLリスニング・ポート: 8002

    次に、「次へ」をクリックします。

  11. 「管理対象サーバーの構成」画面で、フィールドに入力し、「SSL有効」を選択します。

    たとえば、次のように入力します。

    • 名前: UCM_server1

    • リスニング・アドレス: All Local Addresses

    • リスニング・ポート: 16200

    • SSLリスニング・ポート: 16201

  12. 「構成のサマリー」画面で構成を確認し、修正または更新してから、「作成」をクリックします。

  13. 「ドメインの作成中」画面で、ドメインが正常に作成されたら、「完了」をクリックします。

9.5.5.4 WebCenterドメインでのサーバーの起動

Oracle WebLogic Serverドメインを作成するようにOracle WebCenter Contentを構成すると、MW_HOME/user_projects/domainsディレクトリの下にドメイン・ディレクトリが作成されます。Oracle WebCenter Contentを構成するドメインのディレクトリには、管理サーバーおよび1つ以上の管理対象サーバーが含まれ、それぞれOracle WebCenter Contentアプリケーションをホストします。

次のコマンドは、現在の作業ディレクトリがドメイン・ディレクトリであることを想定しています。

WebCenterドメイン管理サーバーの起動

次のコマンドを実行して、管理サーバーを起動します。

MW_HOME/user_projects/domains/webcenter_domain/bin/startWebLogic.sh

WebCenter管理対象サーバーの起動

次のコマンドを実行して、管理対象サーバーを起動します。

MW_HOME/user_projects/domains/webcenter_domain/bin/startManagedWebLogic.sh UCM_server1 t3://localhost:8001/

ユーザー名を入力して、WebLogic Serverを起動します。たとえば、weblogicと入力します。

パスワードを入力します。

9.5.6 WebCenter Contentの構成

WebCenter Contentの構成には、次のタスクがあります。

9.5.6.1 WebCenterコンソールへのアクセス

次のURLで、Oracle WebCenterコンソールにログインします。

http://managedServerHost:managedServerPort/cs

コンテンツ・サーバーに初めてログインする際、WebCenter Contentによって「Content Server構成」ページが表示されます。

「WebCenterの構成」ページで、「送信」をクリックします。

9.5.6.2 WebLogicコンソールでのユーザーの作成(base_domain)

WebLogicコンソールbase_domainでのユーザーの構成例は次のとおりです。

  1. base_domain (OES Adminserver)を起動し、WebLogicコンソールにログインします。

  2. base_domainにユーザーおよびグループを作成します。たとえば、次のように入力します。

    Peterというユーザーを作成し、これにJunior Engineerグループを割り当てます。

    Samというユーザーを作成し、これにDirectorグループを割り当てます。

9.5.6.3 WebLogicコンソールでのユーザーの作成(webcenter_domain)

WebLogicコンソールwebcenter_domainでのユーザーの作成例は次のとおりです。

  1. WebLogicコンソールにログインします。

  2. base_domainにユーザーおよびグループを作成します。たとえば、次のように入力します。

    Peterというユーザーを作成し、これにJunior Engineerグループを割り当てます。

    Samというユーザーを作成し、これにDirectorグループを割り当てます。

9.5.6.4 WebCenter ContentでのConfiguration Managerによるメタデータ値の追加

Configuration Managerを使用してメタデータ値を追加するには、次の手順を実行します。

  1. 管理対象サーバーUCM_server1を再起動し、webcenter_domain管理サーバーおよび管理対象サーバーを停止します。

  2. 次の場所にナビゲートします。

    http://managedServerHost:16200/cs
    
  3. 「メイン」メニューから「管理」「管理アプレット」を選択します。

  4. 「構成マネージャ」をクリックします。

  5. 「構成マネージャ」ページで、「追加」をクリックします。

  6. メタデータ・フィールドを追加するときには、「メタデータ・フィールド名の追加」ダイアログが開き、ここで名前を入力できます。重複する名前は使用できません。最大フィールド長は29文字です。文字、数値およびアンダースコア(_)のみを使用します。空白やその他の特殊文字は使用できません。終了したら、「OK」をクリックします。

  7. 「オプション・リストの有効化」をクリックし、「構成」をクリックします。

  8. オプション・リストの構成ダイアログで、「編集」をクリックします。

  9. オプション・リスト・ダイアログで、カスタム・メタフィールドに使用可能な値を入力します。各値の間には改行を入力し、1行ごとに1つの値を指定する必要があります。

    たとえば、次のように入力します。

    • Public

    • Confidential

    • Secret

  10. 「OK」をクリックして、リストを保存します。

  11. 「構成マネージャ」で、「データベース設計の更新」「OK」の順にクリックします。

  12. 「構成マネージャ」ダイアログのトップ・メニューで、「オプション」「スキーマのパブリッシュ」「閉じる」の順にクリックします。

9.5.6.5 ドキュメントのチェックイン

ドキュメントにチェックインするには、次の手順を実行します。

  1. 次の場所にナビゲートします。

    http://managedServerHost:16200/cs
    
  2. 「新規チェックイン」リンクをクリックします。

  3. 「プライマリ・ファイル」フィールドの横の「参照」をクリックします。ファイルにナビゲートして選択し、「開く」をクリックします。

  4. 「プライマリ・ファイル」フィールドの下に「フォーマット」フィールドが表示されている場合は、ファイルの変換フォーマットを選択します。

  5. パス名およびファイル名を参照または入力して、代替ファイルを指定します。

  6. 「代替ファイル」フィールドの下に「フォーマット」フィールドが表示された場合は、代替ファイルを指定するときに、ファイルの変換フォーマットを選択します。

  7. 「リビジョン」フィールドに表示されているデフォルトのリビジョンをそのまま使用します。(特別な理由がある場合を除いて、リビジョンは変更しないでください。)

  8. 「コメント」フィールドに、ファイルに関する注釈を入力します。

  9. デフォルトのリリース日を使用するか、または将来のリリース日を「リリース日」フィールドに入力します。

  10. 特定の日の時点でファイルを使用できなくなるようにするには、「有効期限」フィールドに日付を入力します。

  11. 適用可能な場合は、組織のカスタム・メタデータ・フィールドに入力します。

  12. 適切なメタデータ値をすべて入力し終わったら、「チェックイン」をクリックします。

9.5.7 WebCenter ContentとOracle Entitlements Serverの統合

WebCenter ContentとOracle Entitlements Serverの統合には、次のタスクがあります。

9.5.7.1 base_domainからのキーのエクスポート

WebCenter ContentドメインおよびOracle Entitlements Serverドメインがセキュリティ・ストアを共有し、そのストアで暗号化が有効になっている場合、各ドメインは同じ暗号化鍵を使用する必要があります。OES暗号化鍵をWebCenter Contentドメインにインポートする必要があります。

  1. base_domainからキーをエクスポートします。

  2. 7001で実行中のbase_domain (OES管理サーバー)を起動します。

  3. 次のコマンドを実行して、/tmpフォルダにkeyディレクトリを作成します。

    mkdir key
    pwd /temp
    cd key
    pwd /temp/key
    
  4. コマンドラインで次のコマンドを実行して、現在の作業ディレクトリからMW_HOME/oracle_common/common/binディレクトリに移動します。

    cd MW_HOME/oracle_common/common/bin
    
  5. 次のコマンドを実行して、WebLogic Scripting Tool (WLST)を起動します。

    ./wlst.sh
    
  6. base_domain管理サーバーに接続します。

    wls:/offline> connect()
    Please enter your username [username]: <enter>
    Please enter your password [password]: <enter>
    Please enter your server URL [t3://host:7001]
    
  7. 次のコマンドを実行します。

    wls:/base_domain/serverConfig>
    exportEncryptionKey(
    jpsConfigFile="domaindir/config/fmwconfig/jps-config.xml",
    keyFilePath="keyFilePath",
    keyFilePassword="password")
    

    説明

    jpsConfigFileは、暗号化鍵がエクスポートされるドメインでのjps-config.xmlファイルの絶対的な場所です。domaindirは、Oracle Entitlements Server Administration Serverドメインの完全パスです。

    keyFilePathは、暗号化鍵をエクスポートするパスです。

    keyFilePasswordは、セキュリティ・ストアの作成または構成に使用するパスワードです。

    たとえば、次のように入力します。

    wls:/base_domain/serverConfig> exportEncryptionKey(
    jpsConfigFile="/opt/oracle/Middleware/user_projects/domains/base_domain/config/fmwconfig/jps-config.xml",
    keyFilePath="/tmp/key",
    keyFilePassword="password");
    

9.5.7.2 Oracle WebCenter Contentドメインでのデータソースの作成

WebCenter Content管理サーバーを起動し、OESドメインとWebCenter Contentドメインが同じポリシー・ストアを共有できるように、opss-DBDSについてOracle Entitlements Serverドメインと同じ構成情報を持つデータソースを作成します。

管理サーバーおよびWebCenter Contentドメインのすべての管理対象サーバーに対して、このデータソースを対象とします。

  1. OESドメインのopss-DBDSの構成情報を確認します。

    1. OESドメインのWebLogic管理コンソールにアクセスします。

    2. 「ドメイン構造」ツリーで「サービス」を展開し、「データ・ソース」を選択します。

    3. 「JDBCデータ・ソースの概要」ページでデータ・ソース名をクリックします。

    4. 「構成: 接続プール」タブを選択します。

      構成情報が表示されます。

  2. WebCenter Contentドメインでデータソースを作成します。

    1. WebCenter ContentドメインのWebLogic管理コンソールにアクセスします。

    2. 手順1の構成としてデータソースを作成します。

データソースの作成方法は、Oracle Fusion Middleware Oracle WebLogic Server管理コンソール・オンライン・ヘルプのJDBC汎用データソースの作成に関する項を参照してください。

9.5.7.3 Oracle WebCenter Contentドメインのセキュリティ・ストアの再関連付け

WLSTのreassociateSecurityStoreコマンドを次のように使用して、WebCenter Contentドメインのセキュリティ・ストアをOracle Entitlements Serverと同じ内容に再関連付けします。

  1. WLSTシェルを起動します。

    cd $MW_HOME/Oracle_ECM1/common/bin
    ./wlst.sh
    
  2. WLST connectコマンドを使用して、WebLogic管理サーバーに接続します。

    connect("username", "password","t3://hostname:port")
    

    たとえば、次のように入力します。

    connect ("weblogic", "welcome1", "ADMINHOST:7001")
    

    usernameは、管理サーバーへのアクセスに使用する管理者のアカウント名

    passwordは、管理サーバーへのアクセスに使用する管理者のパスワード

    hostnameは、管理サーバーのサーバー名

    portは、管理サーバーのポート番号

  3. reassociateSecurityStoreコマンドを次のように実行します。

    reassociateSecurityStore(domain="oes_domain or IAM", servertype="DB_ORACLE", datasourcename="datasource", jpsroot="cnSpecification", join="true")
    

    たとえば、次のように入力します。

    reassociateSecurityStore(domain="oes_domain", servertype="DB_ORACLE", datasourcename="jdbc/OPSSDBDS", jpsroot="cn=jpsroot", join="true")
    
  4. 完了後、exit()コマンドを使用して、WLSTユーティリティを終了します。

スクリプトreassociateSecurityStoreでは、セキュリティ・ストアがソースからターゲットのDBベース・ストアに移行され、デフォルトのポリシー・サービスおよび資格証明サービスがターゲット・リポジトリにリセットされます。domainjpsrootは、jps-config.xmlファイルのfarmnameの値と同じにする必要があります。このファイルは、$UCM_DOMAIN_HOME/config/fmwconfigディレクトリにあります。

datasourcenameは、9.5.7.2項「Oracle WebCenter Contentドメインでのデータソースの作成」で作成したデータソースの名前です。

9.5.7.4 Oracle WebCenter Contentドメインのjps-config.xmlの更新

OESクライアントはポリシーを、アプリケーションとサービスを保護する個々のセキュリティ・モジュールに配布します。ポリシー・データは、制御された方法または制御されない方法で配布されます。配布モードは、各セキュリティ・モジュールのjps-config.xml構成ファイルで定義されています。

jps-config.xmlpdp.serviceセクションを更新します。pdp.serviceが決定ポイントです。これはWebCenter Contentのセキュリティ・モジュール・コンポーネントです。jps-config.xmlファイルはポリシー・ストアに接続するために使用します。

  1. jps-config.xmlファイルをテキスト・エディタで開きます。

    jps-config.xmlファイルは$UCM_DOMAIN_HOME/config/fmwconfigディレクトリにあります。

  2. jps-config.xmlpdp.serviceセクションを更新します。

表9-23に、jps-config.xmlファイルで指定するプロパティを示します。

表9-23 pdp.serviceインスタンス・プロパティの更新

プロパティ 説明

oracle.security.jps.runtime.pd.client.policyDistributionMode

ポリシー配布モードを指定します。制御された配布は、ポリシー配布コンポーネントによって開始され、セキュリティ・モジュールが最後の配布以降に作成または変更されたポリシー・データを受信することを確認します。必須です。

oracle.security.jps.runtime.pd.client.sm_name

セキュリティ・モジュールの名前を定義します。必須です。

oracle.security.jps.runtime.pd.client.SMinstanceType

ポリシー配布コンポーネント・クライアントの接続先のセキュリティ・モジュールのタイプを定義します。必須です。

oracle.security.jps.pd.client.PollingTimerEnabled

ポリシーの定期的なチェックを有効にします。

oracle.security.jps.pd.client.PollingTimerInterval

PDの定期的な確認の間隔を指定します。値は秒単位です。必要に応じて適切な値を設定します。

jdbc.driver

Java Database Connectivity (JDBC) APIを使用してデータベースに接続する場合のドライバの場所を指定します。必須:JDBC APIを使用してデータベースに接続している場合。

jdbc.url

データベースを指すURLを指定します。必須:JDBC APIを使用してデータベースに接続している場合。

oracle.security.jps.ldap.root.name

LDAPポリシー・ストアのディレクトリ情報ツリー(DIT)のトップ(ルート)エントリを定義します。必須です。

oracle.security.jps.farm.name

LDAPポリシー・ストア内のドメイン・ノードのRDN形式。

security.principal

データベース・ユーザー名。

security.credential

データベース・パスワード。

policystore.type

ポリシー・ストア・タイプを指定します。


jps-config.xmlファイル内のpdp.serviceインスタンスの例を次に示します。

<serviceInstance name="pdp.service" provider="pdp.service.provider">
    <description>Runtime PDP service instance</description>
    <property value="non-controlled" name="oracle.security.jps.runtime.pd.client.policyDistributionMode"/>
    <property value="oracle.jdbc.driver.OracleDriver" name="jdbc.driver"/>
    <property value="jdbc:oracle:thin:@webcenter.example.com:1521/db.example.com" name="jdbc.url"/>
    <property value="cn=jpsroot" name="oracle.security.jps.ldap.root.name"/>
    <property value="cn=oes_domain" name="oracle.security.jps.farm.name"/>
    <property value="OES_OPSS" name="security.principal"/>
    <property value="password" name="security.credential"/>
    <property value="DB_ORACLE" name="policystore.type"/>
</serviceInstance>

9.5.7.5 config.cfgファイルの更新

Webロケーション機能を保護するには、WebCenter Contentドメインのconfig.cfgファイルを更新します。config.cfgファイルは、コンテンツ・サーバー・システムのグローバル変数を定義するために使用します。

  1. テキスト・エディタでconfig.cfgファイルを開きます。

    これは$UCM_DOMAIN_HOME/ucm/cs/config/ディレクトリにあります。

  2. 次の行を追加します。

    InternalAppExtensionWildcardTest=*
    

    注意:

    この行を追加すると、ログインおよびログアウト・ページで問題が発生する可能性がありますが、製品機能への影響はありません。この行を追加しなかった場合、Webロケーション機能はOracle Entitlements Serverによって保護されません。この行を追加することをお薦めします。

  3. 管理サーバーおよび管理対象サーバーを再起動します。

9.5.7.6 WebCenter Content Version 11.1.1.7.0以前のJREへの権限の追加

WebCenter Contentのバージョンが11.1.1.7.0以下である場合、Webブラウザによって使用されるJREに権限を追加します。

Windowsの場合(Internet Explorerのみが正しく動作します):

  1. 通常は、C:\Program Files\Java\jre7\lib\securityにあるjava.policyファイルを編集します。

  2. 権限java.util.PropertyPermission "user.timezone", "write";を最後のセクションに追加して、デフォルトの権限をすべてのドメインに付与します。

  3. 管理者権限を使用してこのファイルを保存します。

9.5.7.7 OES-WebCenter Contentコネクタのインストール

OES-WebCenter ContentコネクタはOES Java Wrapperで、リクエスト・パラメータ、ドキュメント・メタデータおよびユーザーのコンテキスト・データをOES SMクライアントに転送します。

OES-WebCenter Contentコネクタをインストールするには、次の手順を実行します。

  1. $OES_CLIENT_HOME/oessm/ucmconnector/componentsディレクトリからucmoesconnector.zipファイルを取得します。

  2. Universal Content Managementのコンポーネント・ウィザードを起動します。

    cd $UCM_DOMAIN_HOME/ucm/cs/bin
    ./ComponentWizard
    

    OES_CLIENT_HOMEはOESクライアント・ソフトウェアのインストール先です。

    UCM_DOMAIN_HOMEは、WebCenter Contentのインストール先のWebLogicドメインです。

    UCM_DOMAIN_HOME/ucm/cs/binは、コンテンツ・サーバーの起動ファイルのルート・ディレクトリです。ここには、コンテンツ・サーバーのサービス、アプレットおよびユーティリティを実行する実行可能ファイルが含まれています。

    「コンポーネント・リスト」画面が表示されます。

  3. 「コンポーネント・リスト」画面で、「インストール」をクリックします。

  4. 「選択」をクリックします。

  5. ucmoesconnector.zipファイルを選択します。

  6. 「開く」をクリックします。

  7. 「OK」をクリックして、OES-WebCenter Contentコネクタをインストールします。

9.5.7.8 統合時のOracle Entitlements Serverの構成

この項で次の手順を実行して、Oracle Entitlements Serverを構成します。

9.5.7.8.1 新しいアプリケーションの作成

次の手順を実行して、新しいアプリケーションUCM Applicationを作成します。

  1. 「認可管理」タブを開きます。

  2. ナビゲーション・パネルの「アプリケーション」を右クリックして、メニューから「新規」を選択します。


    注意:

    または、「ホーム」領域の「検索および作成」にある「アプリケーションの作成」をクリックします。

  3. アプリケーションの名前としてUCM Applicationを入力します。


    注意:

    名前を変更しないでください。

  4. 画面の右上隅の「保存」をクリックします。

アプリケーションの作成手順については、4.5.1.1項「アプリケーションの作成」を参照してください。

9.5.7.8.2 UCM事前検索問合せのリソース・タイプの作成

次の手順を実行して、UCM事前検索問合せのリソース・タイプを作成します。

  1. 「認可管理」タブを開きます。

  2. 「アプリケーション」ノードを展開し、新しく作成した「UCMアプリケーション」ノードを展開します。

  3. 「リソース・タイプ」を右クリックして、「新規」を選択します。

  4. リソース・タイプの名前として、UCM Pre-Search Query Resource Typeと入力します。


    注意:

    名前を変更しないでください。

  5. UCM Pre-Search Query Resource によって許可されたアクションを追加します。

    1. 「アクション」表の上にある「新規」をクリックして、「新規アクション」ダイアログを表示します。

    2. アクションの名前として、searchと入力します。

    3. 「保存」をクリックして、searchアクションを保存します。

  6. 右上にある「保存」をクリックして、リソース・タイプを保存します。

リソース・タイプの作成手順は、4.5.2.1項「リソース・タイプの作成」を参照してください。

9.5.7.8.3 UCM CRUD操作のリソース・タイプの作成

次の手順を実行して、UCM CRUD操作のリソース・タイプを作成します。

  1. 「認可管理」タブを開きます。

  2. 「アプリケーション」ノードを展開し、新しく作成した「UCMアプリケーション」ノードを展開します。

  3. 「リソース・タイプ」を右クリックして、「新規」を選択します。

  4. リソース・タイプの名前として、UCM CRUD Operation Resource Typeと入力します。


    注意:

    名前を変更しないでください。

  5. UCM CRUD Operation Resource によって許可されたアクションを追加します。

    1. 「アクション」表の上にある「新規」をクリックして、「新規アクション」ダイアログを表示します。

    2. アクションの名前として、checkinと入力します。

    3. 「保存」をクリックして、checkinアクションを保存します。

    4. 次のアクションを続けて追加します: checkin_processingupdate_metadataupdate_metadata_processingdeletecheckinnewcheckin_confirm_formcheckoutundo_checkoutcheckin_new_processingget_filecreate_folderretrieve_child_foldersreadおよびfolder_browse

  6. 右上にある「保存」をクリックして、リソース・タイプを保存します。

リソース・タイプの作成手順は、4.5.2.1項「リソース・タイプの作成」を参照してください。

9.5.7.8.4 リソースの作成

次の手順を実行して、リソースを作成します。

  1. 「UCMアプリケーション」ノードの「ポリシー・ドメイン」ノードを展開して、「リソース・カタログ」ノードを展開します。

  2. 「リソース・カタログ」ノードの「リソース」を右クリックし、メニューから「新規」を選択します。

  3. 「ホーム」領域で、「リソース・タイプ」リストから「UCM事前検索リソース・タイプ」を選択します

  4. ユーザーがこのリソースへのアクセスを認可されているかどうかを判断するために渡される名前として、/と入力します。

    その他のリソース名は、WebCenter Contentで定義されているドキュメントIDと一致している必要があります。

  5. 「保存」をクリックしてリソースを保存します。

    リソースの作成手順は、4.5.3.1項「リソースの作成」を参照してください。

9.5.7.8.5 ポリシーの作成

次の手順を実行して、統合のための新しい認可ポリシーを作成します。

ポリシーの作成手順は、4.5.5.1項「認可ポリシーの作成」を参照してください。

  1. 検索用:

    1. 「認可ポリシー」ノードをダブルクリックします。

    2. 既存の認可ポリシーを表示する表の上にある「新規」ボタンをクリックします。

    3. 新しいポリシーの名前を入力します。

    4. 必要に応じて、リソースにアクセスできるプリンシパル(用途またはロール、あるいはその両方)を構成します。

    5. 「ターゲット」表の右のプラス・ボタンをクリックします。

    6. 「ターゲットの検索」ウィンドウの「リソース」タブをクリックします。

    7. 「リソース・タイプ」ドロップダウンで「UCM事前検索問合せのリソース・タイプ」を選択して、「検索」ボタンをクリックします。

    8. リソース"/"を選択して、searchアクションをクリックします。

    9. ポリシーの義務を追加します。

      注意: 1つ以上の義務が存在しなければ、ポリシーは正しく動作しません。

      次の例は、検索ポリシーに義務を追加しています。

      New obligation: Name: Search_Obligation
      New obligation attribute: Name:Attribute1 Value:dStatus <MATCHES> `RELEASED`
      

      一重引用符(')ではなく、バックティック(`)文字を使用します。

      注意: メタフィールドがWebCenter Contentによって定義されている場合は、フィールド名の前にdを追加します。ユーザーがConfiguration Managerでメタフィールドを定義した場合は、フィールド名の前にxを追加します。たとえば、義務ではStatusdStatusに変更し、ユーザー定義のClearanceLevelxClearanceLevelに変更する必要があります。

      注意: 通常、米国レイアウトのキーボードでは、バックティック(`)文字はチルダ(~)の下にあります。バックティック(`)のかわりに、左一重引用符(アポストロフィ('))を使用しないでください。

  2. 新規チェックイン用:

    1. 「ターゲット」表の右のプラス・ボタンをクリックします。

    2. 「ターゲットの検索」ウィンドウの「リソース」タブをクリックします。

    3. 「リソース・タイプ」ドロップダウンで「UCM CRUD操作のリソース・タイプ」を選択して、「検索」ボタンをクリックします。

    4. resource expressionを選択します。式は「.*」です。

    5. 「checkinnew」「checkin_confirm_form」および「checkin_new_processing」をクリックします。

  3. 他のポリシー用:

    対応するプリンシパル、ターゲット、アクションおよび条件を追加します。表9-24に、WebCenter Content.内で保護するコンテンツの例としてDOC1を使用したアクションの比較表を示します。

    表9-24 アクションの比較

    WCC操作 APMポリシー内のリソース APMポリシー内のアクション

    検索

    UCM Pre-Search Query Resource Type:/

    検索

    新規チェックイン

    類似をチェックイン

    UCM CRUD Operation Resource Type:.*

    checkin_new_processing

    checkinnew

    checkin_confirm_form

    チェックアウト

    UCM CRUD Operation Resource Type:DOC1

    checkout

    チェックアウトを元に戻す

    UCM CRUD Operation Resource Type:DOC1

    undo_checkout

    チェックイン

    UCM CRUD Operation Resource Type:DOC1

    checkin_processing

    checkin

    checkin_confirm_form

    更新

    UCM CRUD Operation Resource Type:DOC1

    update_metadata_processing

    update_metadata

    削除

    UCM CRUD Operation Resource Type:DOC1

    delete

    Webロケーション

    UCM CRUD Operation Resource Type:DOC1

    read

    フォルダの参照

    UCM CRUD Operation Resource Type:.*

    folder_browse

    retrieve_child_folders

    フォルダの作成

    UCM CRUD Operation Resource Type:.*

    folder_browse

    create_folder


9.5.7.9 UCMアプリケーションの配布

次の手順を実行して、Java_SMにポリシーを配布します。

  1. 「認可管理」タブにあるツリーの「UCMアプリケーション」ノードをダブルクリックします。

  2. アプリケーションの構成のために「ポリシー配布」タブを開きます。

  3. 表内の「セキュリティ・モジュール」エントリを展開します。

  4. 「JAVA_SM」を選択し、「配布」をクリックして、このアプリケーションに対して構成された認可ポリシーをプッシュします。

  5. $UCM_DOMAIN_HOME/config/fmwconfig/work/UCM_server1ディレクトリにあるstate.chkの更新時間を確認することによって、ポリシーが正しく動作していることを確認します。

9.5.7.10 Oracle WebCenter Contentの動作確認

  1. 任意のユーザーでコンテンツ・サーバーにアクセスして、WebCenter Contentをテストします。

    http://managedServerHost:16200/cs
    
  2. WebCenter ContentがOracle Entitlements Serverポリシーによって保護されていることを確認します。

9.5.7.11 トラブルシューティングのヒント

この項では、Oracle WebCenter ContentおよびOracle Entitlements Serverの統合のトラブルシューティングのヒントについて説明します。

Oracle WebCenter Content Serverのログ・レベルの変更

次のようにWLST setLogLevelコマンドを使用して、WebLogic Server UCM_server1上で構成ロガーoracle.security.oes.ucmconnectorに対して、ログ・レベルをFINEに変更します。

  1. WLSTシェルを起動します。

    cd $MW_HOME/Oracle_ECM1/common/bin
    ./wlst.sh
    
  2. WLST connectコマンドを使用して、WebLogic管理サーバーに接続します。

    connect("username", "password","t3://hostname:port")
    

    たとえば、次のように入力します。

    connect ("weblogic", "welcome1", "webcenter.example.com:16200")
    

    usernameは、管理サーバーへのアクセスに使用する管理者のアカウント名

    passwordは、管理サーバーへのアクセスに使用する管理者のパスワード

    hostnameは、管理サーバーのサーバー名

    portは、管理サーバーのポート番号

  3. setLogLevelコマンドを実行します。

    たとえば、次のように入力します。

    setLogLevel(target="UCM_server1", logger="oracle.security.oes.ucmconnector", level="FINE", persist=0)
    

    targetは、WebLogic Serverインスタンスの名前です。

    loggerは、変更するロガーの完全な名前です。注意: ロガー名は大/小文字が区別されます。

    levelには、ログ・レベルを指定します。有効なJavaレベルには、SEVEREWARNINGINFOCONFIGFINEFINERFINESTなどがあります。

    persistには、レベルを構成ファイルに保存する必要があるかどうかを指定します。値は、0 (レベルを保存しない)または1 (レベルを保存し、WebLogicが再起動しても維持される)です。デフォルト値は1です。

  4. 完了後、exit()コマンドを使用して、WLSTユーティリティを終了します。

Oracle WebCenter Content Serverの診断ログ

Oracle WebCenter Content Serverの診断ログを追跡すると、アクションが正しく行われたかどうかの判定に役立ちます。

tailコマンドを実行します。

たとえば、次のように入力します。

tail -f $UCM_DOMAIN_HOME/servers/UCM_server1/logs/UCM_server1-diagnostic.log

指定された入力値から最後のN行の出力を追跡します。デフォルトでは、指定されたファイルごとに最後の10行を出力します。-fオプションを指定すると、ファイルの出力行を追加します。

キャッシュ・ファイルの更新時間による配布の正常終了の確認

変更内容が配布されると、キャッシュ・ファイルのタイムスタンプが更新されます。キャッシュ・ファイルを確認するには、次コマンドを実行します。

ls -l $UCM_DOMAIN_HOME/config/fmwconfig/work/UCM_server1/*