この章では、特定のセキュリティ・モジュールを使用してリソースを保護する方法について説明します。この章には次の項目があります。
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を提供します。
| セキュリティ・モジュール | 目的 | プロキシ・モード | コンテナ・サポート |
|---|---|---|---|
|
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の認可/ログイン・モジュールまたは |
サポート |
Apache Tomcatアプリケーション・サーバー |
表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章「ポリシー決定ポイントのデプロイ」を参照してください。
企業は、Oracle Entitlements Serverを使用して、MOSSポータル環境を管理できます。MOSSとの統合はMOSSセキュリティ・モジュール・プラグインにより実現されます。このプラグインはSharePoint Server内で認可コールをインターセプトし、統合されたWebサービス・セキュリティ・モジュール(PDP)に送信します。PDPは認可決定をMOSSセキュリティ・モジュール・プラグインに返し、決定が実行されます。詳細は、次の各項を参照してください。
保護可能なSharePointコンポーネントには、Webサイト、Webページ、Webパーツ、リスト・アイテムおよびナビゲーション・バー・アイテムなどがあります。リソースは、コンポーネントに基づいて異なる方法で保護されます。SharePointリソースは、次のリストに従ってカテゴリ分けされます。
アイテムは最小のSharePointコンポーネント(ドキュメント、タスク、連絡先、ページまたは通知など)です。
リストは単一タイプのSharePointコンポーネントのコレクションです。ドキュメント・リスト、連絡先リスト、タスク・リストなどを作成できます。
フォルダはリスト内に存在し、複数のアイテムとサブフォルダのコンテナとして機能します。
サイトはリストのコレクションです。たとえば、SharePointのデフォルトのドキュメント・センター・サイトは、「お知らせ」、「ドキュメント」および「タスク」の3つのリストで構成されています。
SharePointサイト・ページ上のナビゲーション・バー・アイテムは、MOSSコンポーネントの操作に使用できます。
|
注意: すべてのMOSSリソースのリソース・タイプは1つのみです。この項では、 |
次の各項では、詳細を説明します。
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サイト構成ファイル |
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セキュリティの構成」を参照してください。 |
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.aspxとDispForm.aspxの両方のサブリソースとして作成されます。この手順は、非ドキュメント・リスト内のすべてのアイテムについて実行する必要があります。または、アイテムのリンクの上にマウスを移動して、ブラウザのステータス・バーに表示されるURLに含まれるIDをメモします。
|
注意: リスト・アイテムの場合のみ、 |
管理者は、SharePointサーバーを使用して、アクセス制御が必要な機密情報が含まれるカスタム・ページを公開できます。開発者は、Oracle Entitlements Serverタグ・ライブラリに対応するASPタグ内に機密情報を包含することができます。タグ・ライブラリはOracle Entitlements Serverと通信してアクセス決定を取得し、それに基づいて認可されたユーザーにのみコンテンツが表示されます。
|
注意: ASPタグ・ライブラリは、MOSSページで名前空間、タグ接頭辞およびアセンブリを登録し、タグを使用して機密コンテンツを包含する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サーバーの構成に使用されたプロパティ・ファイルです。
|
注意:
|
異なるWindowsマシンにデプロイされているセキュリティ・モジュールをインスタンス化するには、先にWebサービス・セキュリティ・モジュールをインスタンス化します(特別な手順はありません)。その後で次のコマンドを使用して、MOSSセキュリティ・モジュールを構成します。
config.sh –smType moss –prpFileName file_name –mossprpFileName file_name
OESクライアントのインストール手順の詳細は、『Oracle Fusion Middleware Oracle Identity and Access Managementインストレーション・ガイド』を参照してください。
テンプレートmossprpFileNameのmoss.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アプリケーションがそのデフォルト認可プロセスを使用するように構成されます。
次の手順は、SMConfigツールによって開始される自動構成以外にMOSSアプリケーションの認可を手動で構成する手順を示します。この手順は、9.2.2項「MOSSとWebサービスのセキュリティ・モジュールのインスタンス化」でconfig.shスクリプトによって自動実行される手順と同じであり、SMConfigツールを使用しない手順が必要な場合に使用できます。
この手順では、セキュリティ・モジュールがインスタンス化済であることを前提としています。インスタンス化後は、生成される構成IDとサービス・レジストリURLをメモします。この手順で、configIDはMOSS、サービス・レジストリURLはhttp://hostname:port/ServiceRegistryです。
Oracle Entitlements Server管理コンソールを使用して、次の手順を実行します。
Webサービス・セキュリティ・モジュール定義を作成します。
第10章「システム構成の管理」を参照してください。
保護されるMOSSアプリケーションを表すアプリケーション・ポリシー・オブジェクトを作成します。
アプリケーションの名前は、moss_config.propertiesファイルで定義されているmoss.app.nameプロパティの値と一致している必要があります。
第4章「ポリシーとポリシー・オブジェクトの管理」を参照してください。
アプリケーションをWebサービス・セキュリティ・モジュール・プロファイルにバインドします。
第10章「システム構成の管理」を参照してください。
$OES_CLIENT_HOME/oes_sm_instances/MOSS_SM_Name/libディレクトリからOES.SharePoint.dllとlog4net.dllをC:/WINDOWS/assemblyディレクトリにドラッグ・アンド・ドロップします。
これにより、アセンブリがWindowsのグローバル・アセンブリ・キャッシュに登録され、ホスト・マシン上のすべての.NETアプリケーションから使用できるようになります。
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)を使用している場合は必要ありません。
|
注意:
|
ユーザーがMOSSコンポーネントへのアクセスを認可されていない場合にメッセージを表示するカスタム・エラー・ページを追加します。
CustError.aspxとcustError2010.aspxは、Oracle Entitlements ServerのMOSS用カスタム・エラー・ページです。これらは、$OES_CLIENT_HOME/oes_sm_instances/MOSS_SM_Name/adm/pagesディレクトリにあります。
MOSS 2007 (IIS 6)を使用している場合、custError.aspxをC:\ Program Files\Common Files\Microsoft Shared\web server extensions\12\template\layoutsにコピーします。
MOSS 2010 (IIS 7)を使用している場合、custError2010.aspxをC:\Program Files\Common Files\Microsoft Shared\web server extensions\14\template\layoutsにコピーし、名前をcustError.aspxに変更します。
Sharepoint Serverのweb.config構成ファイルを編集して、Oracle Entitlements ServerとMOSSの統合を有効化します。
web.configはSharePointアプリケーションの仮想ディレクトリ(C:\Inetpub\wwwroot\wss\VirtualDirectories\port-numberなど)にあります。ここで、port-numberはアプリケーションのポートです。
|
注意:
|
表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 ( |
|
SsmId |
このセキュリティ・モジュールの名前(MOSSなど)。 |
|
IdentityAsserterName |
Oracle Entitlements Serverで構成されているIDアサーション・プロバイダの名前。現時点では |
|
ApplicationID |
保護されたMOSSリソースを表す構成済Oracle Entitlements Serverアプリケーションの名前。 |
|
ResourceType |
すべてのMOSSリソースのリソース・タイプ( |
|
log4NetXmlfile |
|
|
sharepointSite |
トップレベルSharePointサイト( |
|
Enable OES |
OES統合を有効化するフラグで、値としてtrueまたはfalseを設定します。 |
|
IgnoredExtensions |
OESアクセス制御で無視されるファイル拡張子パターンのカンマ区切りリスト。次に例を示します。 png,js,css,axd これらのリソースへのアクセスがリクエストされた場合、常に付与されます。 |
|
IgnoredURLExpression |
OESアクセス制御で無視されるファイル名パターンのカンマ区切りリスト。次に例を示します。 /_layouts/Authenticate.aspx,/_login/default.aspx,/_forms/default.aspx これらのリソースへのアクセスがリクエストされた場合、常に付与されます。 |
表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>
使用するサーバーに基づいてカスタム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-3をassembliesセクションに、例9-4をmodulesセクション(最後の<remove>より後で最初の<add>より前の位置)に、それぞれ追加します。
カスタム・コンテンツを公開する必要がある仮想パスでPageParserPaths (SafeModeセクション)を更新します。カスタム・コンテンツは、ソリューションによって提供されるタグ・ライブラリを介して認可できます。例9-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>
IISサーバーを再起動して、前述の変更をIISサーバーに反映させます。
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に変更します。
次のいずれかのコマンドを使用して、指定したサイトに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
IISサーバーを再起動します。
%OES_CLIENT_HOME%\oessm\mosssm\libディレクトリにあるMOSSResourceDiscovery.exeを使用して、SharePointサーバーのすべての保護されたリソースのリストを取得します。
|
注意: MOSSリソースは、Oracle Entitlements Serverのリソースに、階層的にマップされます。したがって、検出されたすべてのリソースをポリシー・ストアに定義する必要はありません。たとえば、10,000個のドキュメント名を個別にコピーするのではなく、これらのドキュメントが存在するフォルダの名前をコピーし、リソース名式( |
この実行可能ファイルは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ポリシー・ストアにインポートするために使用されます。
テキスト・ファイルをポリシー移行ツール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を実行する前に、スクリプトを次のように変更します。
ユーザー環境が反映されるようにOES_CLIENT_HOME変数とOES_INSTANCE_NAME変数を変更します。
付録A「ポリシー・ストア・サービス構成」の定義に従って、jps-config.xmlのポリシー・ストア属性を変更します。
このツールは1回のみ実行します。新しいリソースは、管理コンソールを使用して手動で作成します。
管理コンソールを使用してポリシーを配布します。
Oracle Service Bus (OSB)は、多数の分散サービス・エンドポイントを中央で管理および制御するように設計されています。Oracle Entitlements Serverを使用することで、企業はOSBランタイム・リソースへのアクセスを制御し、認可された後にのみそれらがアクセス可能になるようにできます。一般に、OSBランタイム・リソースは、isAccessAllowed()認可APIに渡されるリソースです。
|
注意: Oracle Entitlements Serverでは、OSBコンソールなど、OSB構成時に使用されるリソースは保護されません。 |
次の各項には、OSBリソース・オブジェクトの詳細とその値をOracle Entitlements Serverポリシー・オブジェクトにマップする方法の詳細が含まれています。
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サービス操作の名前を定義します。actionがinvokeの場合、この値はnullです。
|
注意: OSBプロキシ・サービスでWebサービス・セキュリティを使用する場合、OSBはトランスポート・レイヤーとメッセージ・レイヤーでセキュリティ・チェックを実行します。OSBは、トランスポート・レイヤーではユーザーがプロキシ・サービスへのアクセスを許可されているかどうかを確認し、メッセージ・レイヤーではユーザーが指定されたプロキシ・サービス操作の実行を許可されているかどうかを確認します。したがって、トランスポート・レイヤーにユーザー情報が渡されない場合は、匿名ロールにアクセス権限を付与するポリシーを追加する必要があります。 |
OSBリソースのOracle Entitlements Serverポリシー・オブジェクトへのマッピングは、選択されたセキュアまたは非セキュアなアクションに応じて異なります。詳細は、9.3.2項「セキュアなOSBリソースのOracle Entitlements Serverへのマッピング」と9.3.3項「非セキュアな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を選択します。
|
注意: リソース・タイプ |
リソース - SampleProject/Mortgage/ProxyService/SampleProxyService/sayHello (OSBリソース・オブジェクトのpath/proxyの各KEYS値の値に等しい値を使用します)
アクション - access (Oracle Entitlements Serverのデフォルト権限accessが常に使用されます)
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が使用されます)
OSBランタイム・リソースを保護するには、Oracle Entitlements Serverプロキシ・プロバイダも有効化する必要があります。これを実現する手順は、9.4.1項「WebLogic Serverとの統合」を参照してください。
WebLogic Serverセキュリティ・モジュールは、認可リクエストを受信する認可APIを提供するだけでなく、特定のOracle Entitlements Serverの認可プロバイダとロール・マッピング・プロバイダを構成した後にWebLogic Server固有のリソースを保護できます。次の主要な手順では、WebLogic Serverリソースを保護するタスクについて説明します。
認可プロバイダおよびロール・マッピング・プロバイダを有効化します。
9.4.1項「WebLogic Serverとの統合」を参照してください。
検出モードを使用して、保護されるリソースを検出します。
9.4.2項「WebLogic Serverリソースの検出」を参照してください。
WebLogic Server固有のリソースをOracle Entitlements Serverオブジェクトとして定義します。
9.4.3項「WebLogic Serverリソースの変換」と9.4.4項「WebLogic Serverリソースのポリシー・オブジェクトへのマッピング」を参照してください。
適切な認可ポリシーとロール・マッピング・ポリシーを構成します。
第4章「ポリシーとポリシー・オブジェクトの管理」を参照してください。
ポリシーをセキュリティ・モジュールに配布します。
第6章「ポリシー配布の管理」を参照してください。
1.3.2.2項「PDP/PEPの組合せとしてのセキュリティ・モジュール」で説明しているように、WebLogic Serverは、ロール・マッピングおよび認可プロバイダを有効化した後で、認可リクエストを自動的に捕捉できます。次の手順は、これを行う方法を説明します。ここでは、WebLogic Serverは、$DOMAINドメインの$WLSディレクトリにインストールされていることを前提としています。次の手順を実行する際は、インストールに合わせて値を置き換えてください。
次のコマンドを使用して、$DOMAINドメインを起動します。
$DOMAIN/startWeblogic.sh
認可プロキシおよびロール・マッピング・プロバイダを、ドメインを保護するレルムに追加します。
図9-1は、これを示すWebLogic Serverコンソールのスクリーンショットです。
ドメインを再起動します。
プロバイダを有効化したら、構成パラメータについてA.2.5項「WebLogic Serverセキュリティ・モジュール」を参照してください。
アプリケーションのリソースを保護するポリシーを作成する場合、保護される必要があるすべてのリソースは検出される必要があります。WebLogic Serverセキュリティ・モジュールを検出モードで実行し、(使用状況を追跡するために)1つ以上のユーザー・セッションを開くことによって、アプリケーションのリソースを定義できます。(検出モードは、認可するのではなく、保護されるオブジェクトを検出します。)ユーザー・セッション中に実行されたアクティビティに基づいて、Oracle Entitlements Serverは初期ポリシー・セット(保護されるすべてのリソースが定義されます)が生成されます。生成されたポリシー・セットは、ポリシー・ストアにインポートできます。
|
注意: 生成されたファイルは、アプリケーションを完全に保護するポリシー・セットを定義する出発点として機能するように作られています。詳細は次のとおりです。
|
リソース検出は、認可プロバイダおよびロール・マッピング・プロバイダが検出モードで実行されている場合に有効です。このモードでは、これらのプロバイダからユーザー・リクエストの評価結果として常にtrueが返され、それらのリクエストに対する初期ポリシー・セットが生成されます。検出モードでは、アプリケーション、リソース・タイプ(と対応するアクション)、リソース・タイプmatcherClass名およびリソースが検出される可能性があります。次の各項では、詳細を説明します。
デフォルトでは、検出モードはオフです。(jps-config.xmlで)oracle.security.jps.discoveryModeプロパティをtrueに設定すると、機能が有効になります。oracle.security.jps.discoveredPolicyDirプロパティのディレクトリ値を追加すると、ポリシー・セットの書込み先が定義されます。
|
注意: 検出モードでは、階層型リソース・タイプの親リソースは生成されません。検出されるすべてのリソース・タイプが階層型であることを管理者が知っている場合は、オプションの |
これらの構成パラメータの詳細は、付録A『インストール・パラメータおよび構成パラメータ』を参照してください。
生成される検出モード・ファイルは、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>
この項では、WebLogic Serverによってサポートされている様々なリソース・タイプをOracle Entitlements Serverで変換する方法およびOracle Entitlements Server管理コンソールでそれらを表す方法について説明します。WebLogic Serverリソースは、WebLogicセキュリティ・サービスが基礎となるWebLogic Serverエンティティを表すために作成するオブジェクトであり、誰がエンティティにアクセスできるのかを決定するために使用されます。
認可ポリシーでは、オブジェクトの中でも特に、トップレベルのアプリケーション、リソース・タイプおよび保護される実際のリソースが定義されます。このオブジェクトには、表9-4に記載されているオブジェクトが含まれる可能性があります。
表9-4 WebLogic Server認可ポリシー・オブジェクト
| ノード | 説明 |
|---|---|
|
アプリケーション |
アプリケーションは、リソースが関連付けられているアプリケーションに対応します。すべてのリソースが特定のアプリケーションに属するわけではありません。たとえば、JDBCリソースはアプリケーションに属していません。このような場合、アプリケーションの名前のかわりに |
|
リソース・タイプ |
リソース・タイプは、9.4.4項で定義されている、サポートされているWebLogic Serverリソース・タイプに対応します。リソース・タイプ名は、管理コンソールでリソース・タイプが作成される際に定義されます( |
|
リソース |
リソースは、保護されるリソース・タイプのインスタンスです。リソースは、階層型(すべての内容が保護されるディレクトリとして)または特定のファイルである可能性があります。リソース・インスタンスの作成元のリソース・タイプは、最初は階層型として定義される必要があります。 |
この項では、Oracle Entitlements Serverポリシー・オブジェクトを、共通の外部リソースに対して定義されたWebLogic Serverリソースにマップする方法について説明します。WebLogic Serverでサポートされるリソース・タイプ値には、adm、app、com、eis、ejb、jdbc、jms、jndi、ld、svr、url、webおよびwebservicesがあります。ここでは、次のリソース・タイプについて説明します。
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名と同じ(この場合は |
|
リソース・タイプ |
値 |
|
リソース名 |
ejb_name/method_name
EJBメソッドはリソースURLの一部です。リソース・アクションは常に |
次のリストには、認可ポリシーで条件の一部として使用できる、JNDIリソースでサポートされている属性を示します。詳細は、4.6項「条件ビルダーの使用」を参照してください。
application: アプリケーションの名前
module: モジュールの名前
ejb: EJBの名前
method: メソッドの名前
methodインタフェース: 値としてHome、Remote、LocalHomeまたはLocalを使用します
ParamN: メソッドのN番目のパラメータの値(Param1、Param2…など)
|
注意: 条件ビルダーを使用する前に、まずOracle Entitlements Server管理コンソールで動的属性を作成する必要があります。詳細は、4.5.9項「属性および関数を拡張として管理」を参照してください。 |
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ベースのリソースで使用するポリシー・オブジェクトを定義する際に使用する必要があるマッピングを説明します。
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項「属性および関数を拡張として管理」を参照してください。 |
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構成ファイルで定義されている)を使用します( |
|
リソース・タイプ |
値として、サポートされているいずれかのリソース・タイプを使用します(この場合は |
|
リソースの親 |
値として、WebLogic Server構成ファイルで定義されているWebアプリケーションのコンテキスト・パスを使用します。次の例では、コンテキスト・パスが、最初の2つのポリシーでは |
|
リソース |
値としてコンテキスト・パスの後のリソースURIを使用します。この場合は |
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に対応する属性は大/小文字が区別されません。ただし、属性名は大/小文字が区別されると仮定すると、パフォーマンスがわずかですが向上します。 |
フレームワークが一致する属性を検索する順序は次のとおりです。
URL問合せパラメータ - URLに追加される名前と値のペア。URL問合せ文字列に含まれるパラメータに対応する属性名は、パラメータ名と同じです。名前は文字列として表され、大/小文字は区別されません。属性は、リクエスト内にエンコードされている問合せ文字列変数です。たとえば、URLに?test=endcoded%20charという問合せが含まれる場合、認可ポリシーの条件では"if test= "encoded char"としてパラメータにアクセスできます。
サーブレット属性 - サーブレット・コンテナにより内部的にリクエストに追加できる名前と値のペア。それを実現するには、通常はServletRequestインタフェースのsetAttributeメソッドをコールします。ポリシー属性名はサーブレット属性の名前に一致し、文字列として表され、大/小文字は区別されません。
HTTPリクエスト・ヘッダー - HTTPリクエスト・ヘッダーの属性名はヘッダーの名前に一致します。名前は文字列として返され、大/小文字は区別されません。使用可能なヘッダーの例として、date、if-modified-since、referrerまたはuser-agentがあります。(dateヘッダーは通常は日付タイプですが、文字列として返されます。)
Cookies - HTTPリクエストのCookieに一致する属性名はリクエストのCookie名と同じです。名前は文字列として返され、大/小文字は区別されません。返されるCookieの値はアプリケーション固有であり、さらにデコードする必要がある可能性があります。
|
注意: サーブレット属性、URL問合せパラメータ、HTTPリクエスト・ヘッダーまたはCookieの名前が衝突する場合、ポリシーの制約では1つの属性のみ使用可能です。 |
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リソースは特定のアプリケーションには属しません。このような場合、アプリケーションの名前のかわりに |
|
リソース・タイプ |
値として、サポートされているいずれかのリソース・タイプを使用します(この場合は |
|
リソースの親 |
値として、モジュール名(存在する場合)とプール・タイプ(ConnectionPoolまたはMultiPool、この場合はConnectionPool)を使用します。 |
|
リソース |
値として、 |
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項「属性および関数を拡張として管理」を参照してください。 |
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リソースは特定のアプリケーションには属しません。このような場合、アプリケーションの名前のかわりに |
|
リソース・タイプ |
値として、サポートされているいずれかのリソース・タイプを使用します(この場合は |
|
リソースの親 |
宛先タイプ(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 |
キューまたはトピックにメッセージを送信するために必要です。これには、 |
|
receive |
キューまたはトピックにコンシューマを作成するために必要です。これには、 |
|
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項「属性および関数を拡張として管理」を参照してください。 |
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サービス値 |
|---|---|
|
アプリケーション |
|
|
リソース・タイプ |
値として、サポートされているいずれかのリソース・タイプを使用します(この場合は |
|
リソースの親 |
値として、 |
|
リソース |
|
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項「属性および関数を拡張として管理」を参照してください。 |
サーバー・リソースにより、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オブジェクト名 | サーバー・リソース値 |
|---|---|
|
アプリケーション |
サーバー・リソースは特定のアプリケーションには属しません。このような場合、アプリケーションの名前のかわりに |
|
リソース・タイプ |
値として、サポートされているいずれかのリソース・タイプを使用します(この場合は |
|
リソース |
サーバー・インスタンス名。 |
サーバー・リソースの認可ポリシーの作成方法を示すために、管理ロールのメンバーにすべての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項「属性および関数を拡張として管理」を参照してください。 |