Oracle® Fusion MiddlewareOracle Adaptive Access Manager開発者ガイド 11gリリース2 (11.1.2.3.0) E67356-01 |
|
前 |
次 |
チェックポイントは、Oracle Adaptive Access Managerがセッション内でルール・エンジンを使用してセキュリティ・データを収集および評価する特定のポイントです。
この章では、新しいチェックポイントの作成方法と構成方法、および既存のチェックポイントの変更方法について説明します。この章の内容は次のとおりです。
データを収集し、セキュリティ・データを評価する新しいポイントがセッションに必要な場合は、プロパティ・エディタを使用してチェックポイントを作成します。次の参照用のチェックポイントの列挙が用意されています。
profile.type.enum.nameofcheckpoint=Checkpoint_Value profile.type.enum.nameofcheckpoint.name=Checkpoint_Name profile.type.enum.nameofcheckpoint.description=Checkpoint_Description profile.type.enum.nameofcheckpoint.ruleTypes=user,device,location profile.type.enum.nameofcheckpoint.listTypes=vtusers profile.type.enum.nameofcheckpoint.finalactionrule=process_results.rule profile.type.enum.nameofcheckpoint.isPreAuth=true
チェックポイント値は一意の数値である必要があります。他のチェックポイントがこの識別子を使用していないことを確認してください。このIDは、データベース用語における主キーのような働きをします。たとえば、1001です。
チェックポイント名は、ユーザーが識別できる意味のある名前にする必要があります。この名前をOracle Adaptive Access Managerで使用します。
チェックポイントを正常に作成したら、「プロパティ」ボックスの「新規追加」ボタンをクリックして、適切なプロパティを追加します。
チェックポイントの必須プロパティは次のとおりです。
finalactionrule=process_results.rule
finalactionruleプロパティは、最終アクションを決定するルール・ファイルを指定します。ルール・エンジンによってチェックポイントのポリシーが処理される際には、そのスコアとアクションのリストが決定されます。最終アクションのリストは、ルールの実行時に最終決定されたアクションのリストです。どのアクションを最終アクションに指定するかを決めるためにルール・ファイルが参照されます。これが最終アクションかどうかわからない場合は、他のチェックポイントと同様の値を設定してください。ほとんどのアクションは、即時利用可能なprocess_results.ruleファイルを使用しても十分実行できます。
ルール・ファイルの例については、第25.4項「最終アクション」を参照してください。
listTypes= vtusers
listTypesは、必ずvtusersに設定します。
ポリシーは、onlyユーザー・グループにリンク付けできます。
ruleTypes= user,device,location,in_session
ruleTypesプロパティは、チェックポイント時にサポートされるルール・タイプのリストを定義します。チェックポイントのコンテキストに応じて、user、device、locationおよびin_sessionを指定できます。複数の値はコンマを使用して区切ります。このチェックポイントでは、コンマで区切られたタイプのすべてのルールを使用できます。
たとえば、ruleTypesを「user,location」に設定した場合、このチェックポイントでは、userおよびlocationタイプのルールが使用でき、このチェックポイントのユーザー情報と位置情報が提供されます。
別の例として、Cancel OrderチェックポイントでruleTypesに「user,device,location」を指定した場合、userルール・タイプでは、Cancel Orderチェックポイント中にユーザー情報の提供が期待されます。Cancel Orderチェックポイント時にユーザー情報を提供しない場合は、このリストにuserを含めないでください。
追加できるその他のプロパティは次のとおりです。
isPreAuth
Trueは、このチェックポイントが認証前チェックポイントであることを示します。OAAM管理は、認証前スコアと認証前アクションでユーザー詳細を更新します。isPreAuthのデフォルトの値はfalseです。このフラグをtrueに設定した2つのチェックポイントは存在できません。また、同じチェックポイントはpostAuthとpreAuthの両方としてマークできません。
isPostAuth
Trueは、このチェックポイントが認証後チェックポイントであることを示します。OAAM管理は、認証後スコアと認証後アクションでユーザー詳細を更新します。isPostAuthのデフォルトの値はfalseです。このフラグをtrueに設定した2つのチェックポイントは存在できません。また、同じチェックポイントはpostAuthとpreAuthの両方としてマークできません。
チェックポイントを作成したら、サーバーを再起動する必要があります。
addressChangeチェックポイントの作成例を次に示します。
profile.type.enum.addressChange=88 profile.type.enum.addressChange.name=Address Change profile.type.enum.addressChange.description=Address Change checkpoint profile.type.enum.addressChange.ruleTypes=user,device,location profile.type.enum.addressChange.listTypes=vtusers profile.type.enum.addressChange.finalactionrule=process_results.rule profile.type.enum.addressChange.isPreAuth=true
ここでは、finalactionruleに「process_results.rule」が指定されています。ルール評価時における特定のチェックポイントの最終アクションは、このルール・ファイルによって決定されるからです。process_results.ruleファイルは即時利用可能なため、追加手順の実行は不要です。
新規アクションは、アクション・グループを定義してアクションを追加するときにOAAM管理で定義できます。ここで、アクションの作成を選択できます。また、rule.action.enum
に要素を追加して、アクションを作成することもできます。
定義する新規アクションがチェックポイントの最終アクションである場合、次の手順を実行する必要があります。
そのチェックポイントのrule
ファイルを検索するか、そのファイルを定義します(新しいチェックポイントを作成する場合)。このファイルは、ルールの実行時に、最終であるはずのアクションが最終アクションのリストに含まれていることを保証します。
デフォルトのファイルを使用しない場合は、次の例を参考にして、このファイルの内容を確認してください。ルール・ファイルは、OAAMサーバーのクラスパスにあるOAAM拡張ライブラリに含めます。
== <rule name="Block" no-loop="true" salience="100"> <parameter identifier="actionList"> <class>java.util.List</class> </parameter> . <java:condition>actionList.contains("Block")</java:condition> . <java:consequence> if (logger != null){ logger.debug("Executing Block condition"); } . finalAction.append("Block"); drools.clearAgenda(); <!-- This stops any other rules from being evaluated --> </java:consequence> </rule>
そのチェックポイントのfinalactionrule
プロパティを検索するか、そのプロパティを作成します。
たとえば、チェックポイントXのプロパティは、次のようになります。
profile.type.enum.X.finalactionrule=some_file_name.rule
共有ライブラリにルール・ファイルを追加して、そのライブラリをOAAMサーバーに対して使用可能にします。OAAM_extensionsライブラリはサーバーで使用可能なため、そのライブラリにファイルをパッケージ化できます。
前述の例では、最終アクションのリストにBlock
アクションが含まれていました。独自のチェックポイントを定義する場合は、前述の手順を実行した後で、作成したファイルを指すようにfinalactionrule
プロパティを設定できます。前述のrule
ファイルは、サーバーのクラスパスに含めてください。この情報をoaam_serverおよびoaam_offlineサーバーが使用できるようにするためです。ルール・ファイルの定義または作成が終了したら、各サーバーを再起動する必要があります。