この章では、Oracle Virtual Directoryのロギングと監査の管理方法について説明します。この付録の内容は次のとおりです。
Oracle Enterprise Manager Fusion Middleware ControlおよびOracle WebLogic Scripting Tool (WLST)をインタフェースとして使用してOracle Virtual Directoryのロギングを管理できます。この項では、Oracle Virtual Directoryのロギングの管理について説明します。この項の内容は次のとおりです。
Oracle Enterprise Manager Fusion Middleware Controlを使用すると、複数のOracle Fusion Middlewareコンポーネントにわたってログ・ファイルをリスト、検索、および構成できます。Oracle Enterprise Manager Fusion Middleware Controlからログ・ファイルを表示することも、ログ・ファイルをダウンロードし、別のツールを使用して表示することも可能です。
関連項目: Oracle Enterprise Manager Fusion Middleware Controlを使用したロギングの詳細は、『Oracle Fusion Middleware管理者ガイド』を参照してください。 |
Oracle Virtual Directory固有のロギングの考慮事項
次に示す項目は、Oracle Virtual Directoryのロギングに固有であるため、『Oracle Fusion Middleware管理者ガイド』の情報を補足します。
Oracle Enterprise Manager Fusion Middleware Controlを使用してOracle Virtual Directoryのログ・レベルを設定する際、次のログ・レベルは適用されないため、Oracle Virtual Directoryに影響はありません。
NOTIFICATION: 16 (CONFIG)
TRACE: 16 (FINER)
access.logファイルにログ・メッセージが書き込まれるのは、ロギングがNOTIFICATION:1 (INFO)レベルに設定されている場合のみです。ログ・レベルをERROR:1 (SEVERE)またはWARNING:1 (WARNING)に引き上げ、access.logファイルに情報が書き込まれないようにできます。
一般的なガイドラインとして、環境に対するOracle Virtual Directoryのログ・レベルを情報量が可能なかぎり少なくなるように設定することをお薦めします。
WLSTを使用して、Oracle Virtual Directoryのロギングの次の管理タスクを実行できます。
listLoggers
を使用したログ出力とレベルのリスト
getLogLevel
を使用した特定のログ出力のレベルの取得(表示)
setLogLevel
を使用した特定のログ出力のレベルの設定
listLogHandlers
を使用したログ・ハンドラのリスト
configureLogHandlers
を使用したログ・ハンドラの構成
listLogs
を使用した既知のログのリスト
displayLogs
を使用したログの内容の検索と表示
関連項目: WLSTを使用したOracle Virtual Directoryのロギングの管理の詳細は、次のドキュメントを参照してください。
|
メッセージ・ロギングは、java.util.logging.Filter
実装クラスの使用、およびadapters.os_xmlファイルの各アダプタ構成で指定されるlogLevel属性を通じて制御できます。
注意: この項で説明する粒度の細かいメッセージ・ロギング機能を管理するには、該当するXMLファイルを手動で編集して、Oracle Virtual Directoryサーバーを再起動します。粒度の細かいメッセージ・ロギングは、Fusion Middleware ControlまたはWebLogic Scripting Tool (WLST)を使用して管理することはできません。 |
java.util.logging.Filter StringMatchFilter
のデフォルトの実装は、Oracle Virtual Directoryに含まれています。このデフォルトの実装では、次の2つのパラメータがサポートされています。
StringToBeMatched
: 1つまたは複数のDIT/Stringsを指定できます。
AcceptOnMatch
: このブール値により、指定されたDIT/Stringsのリストとの一致に基づいてログ・メッセージを含めるかまたは除外できます。
java.util.logging.Filter
実装とそのパラメータは、server.os_xmlファイルで指定できます。次に、文字列c=us
を含むログ・メッセージを除外するStringMatchFilter
クラスのlogFilter
の構成の例を示します。
<logFilters> <filter className="com.octetstring.vde.util.StringMatchFilter"> <param name="StringToBeMatched" value="c=us" /> <param name="AcceptOnMatch" value="false" /> </filter> </logFilters>
ログ・メッセージを含めるには、AcceptOnMatch
をtrue
に設定します。ログ・メッセージに、logFilter
構成で指定されているDITが含まれるようになります。ログ・メッセージを除外には、AcceptOnMatch
をfalse
に設定します。ログ・メッセージに、指定されているDITが含まれなくなります。StringMatchFilter
を有効化するには、それをovd-logging.xml
ファイルで定義されているログ出力またはハンドラのいずれかにフィルタとして構成します。次に、LogHandler
に対してフィルタを指定する構成の例を示します。
<logging_configuration> <log_handlers> <log_handler name='OVDHandler' class='oracle.core.ojdl.logging.ODLHandlerFactory' filter='com.octetstring.vde.util.StringMatchFilter'> <property> ... </property> </log_handler> </log_handlers> <loggers> ... </loggers> <logging_configuration>
注意: server.os_xml、ovd-logging.xml 、およびadapters.os_xml ファイルは、次のディレクトリにあります。
ORACLE_INSTANCE/config/OVD/config/COMPONENT_NAME/ |
Oracle Virtual Directory は、コンプライアンス、監視および分析のためにOracle Application Server 11gインフラストラクチャの共通監査フレームワークを使用します。Oracle Enterprise Manager Fusion Middleware ControlおよびWLSTを共通監査フレームワークに対するインタフェースとして使用してOracle Virtual Directoryの監査を管理できます。この項では、Oracle Virtual Directoryの監査の管理について説明します。この項の内容は次のとおりです。
Oracle Enterprise Manager Fusion Middleware Controlインタフェースを使用して、次の管理を含むOracle Virtual Directoryの監査タスクを実行できます。
監査ポリシー
監査データの収集と格納
監査レポート
Oracle Virtual Directoryを含む多くのOracle Fusion Middlewareコンポーネントの監査手順は、『Oracle Fusion Middlewareセキュリティ・ガイド』で詳しく説明されている手順に似ています。次に、Oracle Enterprise Manager Fusion Middleware Controlを使用したOracle Virtual Directoryサーバーの監査手順の概要を示します。
「Oracle Virtual Directory」メニューから「セキュリティ」を選択し、「監査ポリシー設定」を選択します。
「監査ポリシー」リストから、「カスタム」を選択して独自のフィルタを構成するか、事前設定されたフィルタ(「なし」、「低」、または「中」)から1つを選択します。
障害のみの監査を実施するには、「障害のみ選択」をクリックします。
フィルタを構成するには、フィルタ名の隣の「編集」アイコンをクリックします。そのフィルタの「フィルタの編集」ダイアログが表示されます。
ボタン、メニューの選択肢、入力する文字列を使用してフィルタ条件を指定します。「条件」には、「Initiator」、「ターゲット」、リモートIP、および「リソース」が含まれます。「条件」のテストには、-contains、-contains_case、-endswith、-endswith_case、-eq、-matches、-ne、-startswith、および-startswith_caseが含まれます。テストには、文字列として値を入力します。グループ化にはカッコを使用し、結合にはANDおよびORを使用します。
条件を追加するには、「追加」アイコンをクリックします。
フィルタの編集が完了したら、「OK」をクリックします。
関連項目: Oracle Enterprise Manager Fusion Middleware Controlを使用したOracle Virtual Directoryの監査の詳細は、『Oracle Fusion Middlewareセキュリティ・ガイド』を参照してください。 |
WLSTを使用して、Oracle Virtual Directoryの次の監査タスクを実行できます。
getAuditPolicy
を使用した監査ポリシーの取得(表示)
setAuditPolicy
を使用した監査ポリシーの設定
listAuditEvents
を使用した監査イベントのリスト(表示)
関連項目: WLSTを使用したOracle Virtual Directoryの監査の管理の詳細は、次のドキュメントを参照してください。
|
Oracle Virtual Directoryのように、ローカルでその監査ポリシーを管理するコンポーネントの場合は、コマンドに対する引数としてMBean名を含める必要があります。監査MBeanの名前の書式は次のとおりです。
oracle.as.ovd:type=component.auditconfig,name=auditconfig,instance=INSTANCE, component=COMPONENT_NAME
注意: 前の例の監査MBeanは、1つの連続する文字列である必要があります。このドキュメントでは、スペースと幅の制限のために2つの行で表示されています。 |
属性に変更を加える前に、MBeanが現在のサーバー構成を保持していることを確認する必要があります。そのためには、wlst invoke()
コマンドを使用して、Oracle Virtual DirectoryサーバーからMBeanに構成をロードする必要があります。変更が完了したら、invoke()
コマンドを使用して、MBean構成をOracle Virtual Directoryサーバーに保存し、次にinvoke()
コマンドを使用してOracle Virtual Directoryサーバーから更新された構成をMBeanにロードする必要があります。このプロセスによって、Oracle Virtual 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=ovd1,instance=instance1
setAuditPolicy()
およびinvoke()
を使用する wlst
セッションの例を示します。
java weblogic.WLST connect('username','password','t3://WEBLOGIC_HOST:WEBLOGIC_ADMIN_PORT') custom() cd('oracle.as.management.mbeans.register') cd('oracle.as.management.mbeans.register:type=component,name=ovd1,instance= instance1') invoke('load',jarray.array([],java.lang.Object),jarray.array([],java.lang.String) setAuditPolicy(filterPreset='None',addSpecialUsers="cn=user2,cn=users,dc=oracle,dc =com",removeSpecialUsers='cn=user1,cn=users,dc=oracle,dc=com',on='oracle.as.ovd:ty pe=component.auditconfig,name=auditconfig,instance=instance1,component=ovd1') custom() cd('oracle.as.management.mbeans.register') cd ('oracle.as.management.mbeans.register:type=component,name=ovd1,instance= instance1') invoke('save',jarray.array([],java.lang.Object),jarray.array([],java.lang.String) invoke('load',jarray.array([],java.lang.Object),jarray.array([],java.lang.String)
Oracle Virtual Directoryでは、次のコンポーネントに対する構成変更関連のイベントが監査および記録されます。
ACL (acls.os_xml)
アダプタ(adapters.os_xml)
リスナー(listeners.os_xml)
サーバー(server.os_xml)
監査ログ・レコードには、監査イベントごとに次の情報が含まれます。
プロキシ・ユーザーDNおよび操作が実行されたIPアドレス
注意: Oracle Directory Services Manager 11.1.1.4.0によって、すべての主要な操作中にそれらの操作を監査できるようにクライアントIPアドレスおよびユーザーDN情報がOracle Virtual Directory 11.1.1.4.0に送信されます。このOracle Directory Services Managerリリースの新しいAPIでは、Oracle Virtual Directory 11.1.1.4.0リリースの構成および管理のみがサポートされています。 |
操作名およびタイプ(追加、削除、または変更)
イベントが発生したときのタイムスタンプ
影響を受ける構成タイプ(ACL、アダプタ、監査、リスナー、ロギング、またはサーバー)
旧構成バージョン(変更前の構成のバージョン)
構成の旧バージョンと新バージョンの間の正確な相違
これらの構成変更関連のイベントは、WebService APIレイヤーで監査され、監査リポジトリに記録されます。
また、Oracle Virtual Directoryには、構成変更操作を管理および監査するためのJMXテクノロジも統合されています。JMX MBeanはWebService管理APIをバイパスします。これにより、監査サービスが下位レベルに移動し、すべての構成変更アクティビティの追跡が可能になり、それらの操作イベントが成功したか失敗したかに関係なく記録されます。
Oracle Virtual Directory構成管理クラスおよびWebService APIには、操作の実行元のIPアドレスを追跡し、そのIPアドレスをいくつかの役立つセキュリティ監査情報とともに監査ロジックに渡すメソッドが含まれています。
構成ごとに、対応する構成管理クラスが1つあります。構成XMLファイルは、次のように管理クラスにマップされています。
構成XMLファイル | 監査構成管理クラス |
---|---|
acls.os_xml | com.octetstring.vde.config.AclsCfg |
adapters.os_xml | com.octetstring.vde.config.AdaptersCfg |
listeners.os_xml | com.octetstring.vde.config.ListenersCfg |
server.os_xml | com.octetstring.vde.config.ServerCfg |
構成に変更を行うと、Oracle Virtual Directoryによって元の構成バージョンのコピーが監査リポジトリに記録され、旧バージョンと新しい構成の間の違いが記録されます。
Oracle Virtual Directoryの監査は、元の値と新しい値の記録など構成パラメータが変更された粒度の細かい変更の記録を試みます。この情報を入手できない場合、Oracle Virtual Directoryでは次の表記を使用して旧バージョンと新バージョンなど構成ファイル全体が記録されます。
規則 | 説明 |
---|---|
NN | DNおよび入手可能な場合は操作が実行されたIPアドレス。 |
WHAT | 変更された構成の名前とタイプ。 |
DD:HH | イベントが発生したときのタイムスタンプ |
CONF DETAIL | 正確な構成の詳細。 |
OO | 古い構成。 |
WW | 新規構成。 |
たとえば、新しいACL、アダプタ、またはリスナーを追加した場合、イベントは次のように監査リポジトリに記録されます。
NN added WHAT configuration on DD:HH. The added configuration is: CONF DETAIL.
既存のACL、アダプタ、またはリスナーを変更したり、監査、ロギング、またはサーバー構成の設定を変更した場合、そのイベントは次のように監査リポジトリに記録されます。
NN updated WHAT configuration on DD:HH. The configuration is changed from OO to WW.