この章では、Oracle Enterprise Manager Fusion Middleware Control、Oracle WebLogic Scripting Tool (WLST)およびLDAPコマンド行ユーティリティを使用して、Oracle Internet Directoryに固有の情報の監査を管理する方法について説明します。
監査の管理タスクの詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。
この章の内容は次のとおりです。
この概要の項目は次のとおりです。
監査とは、セキュリティ要求およびその要求に対する結果に関連する情報を収集および格納するプロセスです。これにより、否認防止を目的として、選択されたシステム・アクティビティの電子証跡が提供されます。監査は一定の監査基準に基づいて、特定のセキュリティ・イベントや管理操作を追跡するように構成できます。監査レコードは集中型リポジトリ(LDAP、データベースまたはファイル)に保持され、これを使用して監査レポートを作成、表示および格納できます。11gリリース1 (11.1.1)のリリースでは、Oracle Internet DirectoryでOracle Fusion Middlewareと統合された監査フレームワークが使用されています。Oracle Internet Directoryは、このフレームワークを使用してセキュリティ関連の重要な操作を監査します。このフレームワークの機能は次のとおりです。
ASコンポーネントから監査情報を収集するAPI
すべてのASコンポーネントで使用される共通監査レコード形式
企業内のコンポーネントによって生成される監査レコードを収集する監査リポジトリ・データベース(顧客はオプションでAudit Vaultをリポジトリとして使用することもできます)
監査機能によって取得した情報のタイプを制御するための管理インタフェース
この章を読む前に、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』の監査に関する章を参照してください。
新しいOracle Internet Directory監査フレームワークには、次の利点があります。
他のOracle Application Serverコンポーネントと同じレコード形式を使用します。
パフォーマンスとセキュリティの向上のため、レコードはOracle Databaseの表に格納されます。
レコードをAudit Vaultに格納して、セキュリティをさらに向上できます。
管理者として、Enterprise Managerを使用して監査レコードに取得される情報のタイプを構成できます。
構成変更はすぐに有効になります。
管理者は監査レコードを表示できます。
Enterprise Manager
XMLパブリッシャに基づくサマリー・レポート
インスタンス管理者によって行われるすべての監査構成が監査されます。これは無効にすることができません。
関連項目: 監査リポジトリおよび監査フィルタの構成の詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。 |
監査レコードがデータベースに確実に保存されるように監査ストアを構成する必要があります。監査の管理タスクの詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』の「監査の構成および管理」の章の次の項を参照してください。
監査ストアの管理
データベース・ストアの拡張管理
Oracle Internet Directoryの監査構成は、インスタンス固有のエントリの3つの属性から構成されます。
cn=componentname,cn=osdldapd,cn=subconfigsubentry
表23-1にこれらの属性を示します。
表23-1 Oracle Internet Directoryの監査構成属性
属性 | 説明 |
---|---|
|
プリセットは、 |
|
監査されるイベント名とカテゴリ名のカンマ区切りのリスト。次に例を示します。 Authentication.SUCCESSESONLY, Authorization(Permission -eq 'CSFPermission") カスタム・イベントは、 |
|
cn=orcladmin. |
詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。
レプリケーションとOracle Directory Integration Platform監査は、インスタンス固有の構成エントリの属性orclextconfflag
の値を変更することで有効にできます。デフォルト値は3
で、レプリケーションとOracle Directory Integration Platform監査の両方が無効です。両方を有効にするには、7
に変更します。これがorclextconfflag
に行える唯一の変更で、これ以外は内部属性です。
第23.4.3項「レプリケーションおよびOracle Directory Integration Platformの監査の有効化」を参照してください。
監査レコードには次のフィールドがあります。
イベント・カテゴリ: イベントのクラス(認証、認可など)
イベント名
イニシエータ: 操作を開始するユーザー
ステータス: 成功または失敗
認証方式
セッションID: 接続ID
ターゲット: 操作の実行対象となるユーザー
イベント日時
リモートIP: クライアントのソースIPアドレス
コンポーネント・タイプ: OID
ECID
リソース: 操作が行われるエントリまたは属性。
監査情報は、最終的な場所に書き込まれる前に、バスストップと呼ばれる場所に一時的に格納されます。
このファイルは、ディレクトリORACLE_INSTANCE
/auditlogs/
componentType
/
componentName
にあります。
監査ファイルは、XMLファイルまたはデータベースに永続的に格納されます。XMLファイルは、監査レコードのデフォルトの記憶域メカニズムです。Oracleインスタンスごとに1つのXMLリポジトリがあります。特定のOracleインスタンス内で実行されるすべてのコンポーネントについて生成される監査レコードは、同じリポジトリに格納されます。データベース・リポジトリを使用している場合、ドメイン内のすべてのOracleインスタンス内のすべてのコンポーネントによって生成される監査レコードは、同じリポジトリに格納されます。
監査レポートの生成の詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』の監査の分析およびレポートに関する章を参照してください。Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイドの章「監査の構成と管理」に、Oracle Internet Directoryの例が掲載されています。
11gリリース1 (11.1.1)で導入されたOracle Fusion Middleware監査フレームワークでは、Oracle Internet Directoryなどのシステム・コンポーネントを含むOracleミドルウェア製品の集中管理された監査フレームワークが提供されます。
監査の管理には、Oracle Enterprise Manager Fusion Middleware Controlを使用できます。インタフェースは、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』に記載されているように、すべてのOracle Fusion Middlewareコンポーネントに対して基本的に同じです。
Oracle Internet Directory監査を管理する手順は、次のとおりです。
Oracle Enterprise Manager Fusion Middleware Controlにログインします。
「Oracle Internet Directory」メニューから、「セキュリティ」を選択し、「監査ポリシー設定」を選択します。
「監査ポリシー」リストから、「カスタム」を選択して独自のフィルタを構成するか、または事前設定済フィルタ(「なし」、「低」または「中」のいずれか)を選択します。(Fusion Middleware ControlからはAll
を設定できません。)
障害のみを監査する場合は、「障害のみ選択」をクリックします。この手順は、前の手順で「カスタム」を選択している場合にのみ可能です。
フィルタを構成するには、フィルタ名の横にある「編集」アイコンをクリックします。そのフィルタに対して「フィルタの編集」ダイアログが表示されます。
フィルタ条件は、ボタン、メニューからの選択、および文字列の入力で指定します。条件の対象には、HostID、HostNwaddr、InitiatorDN、TargetDN、Initiator、Remote IPおよびRolesがあります。条件のテストには、-contains、-contains_case、endswith、endswith_case、-eq、-ne、-startswithおよび-startswith-caseがあります。テストに使用する値は文字列として入力します。グループ化する場合はカッコを、組合せを作成する場合はANDおよびORを使用します。
条件を追加するには、「追加」アイコンをクリックします。
フィルタが完了したら、「適用」をクリックして変更を保存するか、「元に戻す」をクリックして変更を破棄します。
Oracle Internet Directoryでは、その監査構成は表23-1「Oracle Internet Directoryの監査構成属性」に示すインスタンス固有の3つの構成エントリ属性に格納されます。「監査ポリシー」ページのフィールドと属性の対応を表23-2に示します。
表23-2 Fusion Middleware Controlの監査構成属性
フィールドまたはヘッダー | 構成属性 |
---|---|
監査ポリシー |
|
名前、障害のみ選択、監査の有効化、フィルタ |
|
常時監査するユーザー |
|
Oracle Fusion Middleware監査フレームワークを使用してOracle Internet Directoryのカスタム監査ポリシーを定義し、アクセス制御、ユーザー資格証明、構成などの機密データに関連付けられた属性をモニターできます。
たとえば、アクセス制御ポリシー・ポイント(ACP)に対する変更を監査するため、orclaci
やorclentrylevelaci
などの属性のModifyDataItemAttributes
イベント・タイプを取得するように監査ポリシーを構成できます。
ModifyDataItemAttributes
イベント・タイプは、ldapmodify
操作によって生成されます。このイベントのイニシエータ属性は、LDAP操作を実行するユーザーの識別名で、リソース属性は、操作が実行されるLDAP属性のエントリ識別名です。
ModifyDataItemAttributes
イベント・タイプを取得することで、属性に対するすべてのACP変更をモニターできます。たとえば、orclaci
属性やorclentrylevelaci
属性が変更されたかどうかを確認できます。
orclaci
属性やorclentrylevelaci
属性に対する変更をモニターする監査ポリシーを作成する手順は、次のとおりです。
Oracle Enterprise Manager Fusion Middleware Controlにログインします。
左側のパネルで、監査するOracle Internet Directoryインスタンスを右クリックします。例: oid1
Oracle Internet Directoryのコンポーネント・メニューで、「セキュリティ」→「監査ポリシー」に移動します。「監査ポリシー設定」ページが表示されます。
「監査レベル」のドロップダウン・リストから「カスタム」を選択します。
DataAccessイベント・カテゴリおよびModifyDataItemAttributesイベント・タイプの「監査の有効化」を確認します。
成功した変更または失敗した変更(あるいはその両方)のどちらを監査するかに応じて、「監査の有効化」列の適切なチェック・ボックスを選択します。
監査ポリシーにフィルタを追加するため、「フィルタの編集」鉛筆アイコンをクリックしてフィルタを構成します。
「条件」を「リソース」に設定します。
演算子を-eqに設定します。
リソース属性をorclaciとして指定します。
「追加」アイコンをクリックします。フィルタは次のようになります。
Resource -eq "orclaci"
orclentrylevelaci
属性をフィルタに追加するため、「OR」をクリックし、新しい条件(リソース、-eq、orclentrylevelaci)を定義して「追加」をクリックします。フィルタは次のようになります。
Resource -eq "orclaci" -or Resource -eq "orclentrylevelaci"
「適用」をクリックして監査ポリシーを保存します(または、「元に戻す」をクリックして破棄します)。
デプロイメントで必要な場合、このポリシーに他の属性を追加したり、属性、操作およびアクティビティを監査する他のポリシーを作成できます。詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』のFusion Middleware Controlによるシステム・コンポーネントの監査ポリシーの管理に関する項を参照してください。
『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』のWLSTを使用した監査ポリシーの管理に関する項に記載のように、wlst
を使用して監査を管理できます。コマンドgetAuditPolicy()
、setAuditPolicy()
またはlistAuditEvents()
を使用します。
Oracle Internet Directoryなど監査ポリシーをローカルで管理するコンポーネントについては、コマンドの引数としてMBean名を含める必要があります。監査MBeanの名前の形式は次のとおりです。
oracle.as.management.mbeans.register:type=component.auditconfig,name=auditconfig1,instance=INSTANCE,component=COMPONENT_NAME
次に例を示します。
oracle.as.management.mbeans.register:type=component.auditconfig,name=auditconfig1,instance=instance1,component=oid1
使用する必要のある別のwlst
コマンドはinvoke()
です。第9.3項「WLSTを使用したシステム構成属性の管理」に記載のとおり、属性に変更を加える前にMBeanが現在のサーバー構成を持っていることを確認する必要があります。これを行うには、invoke()
コマンドを使用してOracle Internet DirectoryサーバーからMBeanに構成をロードする必要があります。変更後、invoke()
コマンドを使用してOracle Internet DirectoryサーバーにMBean構成を保存する必要があります。このようにinvoke()
を使用するには、ツリーのルート・プロキシMBeanに移動する必要があります。ルート・プロキシMBeanの名前の形式は次のとおりです。
oracle.as.management.mbeans.register:type=component,name=COMPONENT_NAME,instance=INSTANCE
次に例を示します。
oracle.as.management.mbeans.register:type=component,name=oid1,instance=instance1
次に、setAuditPolicy()
およびinvoke()
を使用したwlst
セッションの例を示します。
ORACLE_COMMON_HOME/common/bin/wlst.sh connect('username', 'password', 'protocol://localhost:7001', 'localhost:7001') custom() cd('oracle.as.management.mbeans.register') cd('oracle.as.management.mbeans.register:type=component,name=oid1,instance=instance1') invoke('load',jarray.array([],java.lang.Object),jarray.array([],java.lang.String)) setAuditPolicy(filterPreset='None', on='oracle.as.management.mbeans.register:type=component.auditconfig, name=auditconfig1,instance=instance1,component=oid1') invoke('save',jarray.array([],java.lang.Object),jarray.array([],java.lang.String))
LDAPツールを使用して監査を管理できます。
ldapsearch
を使用して監査構成を表示できます。次に例を示します。
ldapsearch -p 3060 -h myhost.example.com -D cn=orcladmin -q \ -b "cn=oid1,cn=osdldapd,cn=subconfigsubentry" \ -s base "objectclass=*" > /tmp/oid1-config.txt grep orclaud oid1-config.txt orclaudsplusers=cn=orcladmin orclaudcustevents=UserLogin.FAILURESONLY, UserLogout, CheckAuthorization, ModifyDataItemAttributes, CompareDataItemAttributes, ChangePassword.FAILURESONLY orclaudfilterpreset=custom
ldapmodify
コマンドを使用して監査を管理できます。LDIFファイルを作成して、属性orclAudFilterPreset、orclAudCustEventsおよびorclAudSplUsersに対して必要な変更を加える必要があります。
コマンドは次のとおりです。
ldapmodify -D cn=orcladmin -q -p portNum -h hostname -f ldifFile
たとえば、ユーザー・ログイン・イベントについてのみ監査を有効にするには、前述のldapmodify
コマンドに次のLDIFファイルを使用します。
dn: cn=componentname,cn=osdldapd,cn=subconfigsubentry
changetype: modify
replace: orclaudFilterPreset
orclaudFilterPreset: Custom
-
replace: orclaudcustevents
orclaudcustevents: UserLogin
詳細は、『Oracle Fusion Middlewareアプリケーション・セキュリティ・ガイド』を参照してください。
次のLDIFファイルでは、レプリケーションとOracle Directory Integration Platform監査の両方が有効になります。
dn: cn=oid1,cn=osdldapd,cn=subconfigsubentry changetype: modify replace: orclextconfflag orclextconfflag: 7
次のLDIFファイルでは両方が無効になります。
dn: cn=oid1,cn=osdldapd,cn=subconfigsubentry changetype: modify replace: orclextconfflag orclextconfflag: 3
次のようなコマンド行を使用します。
ldapmodify -h host -p port -D "cn=orcladmin" -q -f ldiffile