Identity Manager では、カスタム監査パブリッシャーへ監査イベントを送信できます。
次のカスタムパブリッシャーが提供されています。
コンソール。標準出力または標準エラーに監査イベントを出力します。
ファイル。フラットファイルへ監査イベントを書き込みます。
JDBC。JDBC データストアに監査イベントを記録します。
JMS。JMS キューかトピックに監査イベントを記録します。
JMX。JMX (Java Management Extensions) クライアントで Identity Manager の監査ログアクティビティーを監視できるように、監査イベントをパブリッシュします。
スクリプト。カスタムスクリプトで監査イベントを保存できるようにします。
独自のパブリッシャーを作成する場合は、「カスタム監査パブリッシャーの開発」を参照してください。
この節では、次のトピックについて説明します。
カスタム監査パブリッシャーは「監査設定」ページから有効にします。
管理者インタフェースのメインメニューで「設定」をクリックし、二次的なメニューで「監査」をクリックします。
「監査設定」ページが開きます。
ページの下にある「カスタムパブリッシャーの使用」オプションを選択します。
現在設定されている監査パブリッシャーの一覧表が表示されます。
新しい監査パブリッシャーを設定するには、「新規パブリッシャー」ドロップダウンメニューからカスタムパブリッシャータイプを選択します。
「新規監査パブリッシャーの設定」フォームに入力します。「OK」をクリックします。
重要: 「保存」をクリックして、新しい監査パブリッシャーを保存してください。
コンソール、ファイル、JDBC、またはスクリプトの監査パブリッシャーを有効にする場合は、「カスタム監査パブリッシャーを有効にする」の手順に従ってください。「新規パブリッシャー」ドロップダウンメニューから適切なパブリッシャータイプを選択します。
「新規監査パブリッシャーの設定」フォームに入力します。このフォームの詳細については、i-Helps およびオンラインヘルプを参照してください。
コンソール監査パブリッシャーは、監査イベントを標準出力または標準エラーに出力します。
ファイル監査パブリッシャーは、監査イベントをフラットファイルに書き込みます。
JDBC 監査パブリッシャーは、監査イベントを JDBC データストアに記録します。
スクリプト監査パブリッシャーでは、JavaScript または BeanShell で記述したカスタムスクリプトで監査イベントを格納できます。
JMS 監査ログカスタムパブリッシャーでは、JMS (Java Message Service) キューまたはトピックに監査イベントレコードをパブリッシュできます。
JMS にパブリッシュすると、Identity Manager サーバーが複数ある環境でより柔軟な相関を実現できます。加えて、JMS はファイル監査ログパブリッシャーの使用が制限される状況でも使用できます。 たとえば、Windows 環境では、サーバーの稼動中にクライアントのレポートツールからログにアクセスできない場合があります。
複数サーバー環境での JMS の利点は次のとおりです。
JMS のメッセージストアにより、メッセージ記憶領域と検索が一元化および単純化される。
JMS アーキテクチャーは、サービスにアクセス可能なクライアント数に制限がない。
JMS プロトコルはファイアウォールその他のネットワークインフラストラクチャーを通過しやすい。
Java Message System は 2 つのメッセージングモデルを提供します。ポイントツーポイントのキューイングモデルと、パブリッシュ/サブスクライブのトピックモデルです。Identity Manager は両方のモデルをサポートします。
ポイントツーポイントモデルでは、「プロデューサ」が特定のキューにメッセージを送信し、「コンシューマ」がキューからメッセージを読み取ります。この場合、プロデューサはメッセージの宛先を知っており、メッセージをコンシューマのキューに直接送信します。
ポイントツーポイントモデルの特性は次のとおりです。
1 つのコンシューマのみがメッセージを取得する。
プロデューサは受信側がメッセージを読み取るときに稼動している必要はなく、受信側もメッセージの送信時に稼動している必要はない。
正常に処理されたすべてのメッセージの確認応答が受信側で行われる。
これに対し、パブリッシュ/サブスクライブモデルでは、特定のメッセージ「トピック」へのメッセージのパブリッシュをサポートします。0 個以上のサブスクライバが、特定のメッセージトピックのメッセージを受信対象とするための登録を行えます。このモデルでは、パブリッシャーもサブスクライバも互いを認識しません。このモデルの例として、匿名の掲示板があります。
パブリッシュ/サブスクライブモデルの特性は次のとおりです。
複数のコンシューマがメッセージを受信できる。
パブリッシャーとサブスクライバの間に時間的な依存関係が存在する。クライアントがサブスクライブする前に、パブリッシャーでサブスクリプションを作成する必要があります。一度サブスクライブすると、永続サブスクリプションが確立されないかぎり、サブスクライバはメッセージを受信するためにアクティブであり続けます。永続サブスクリプションの場合は、サブスクライバが未接続の間にパブリッシュされたメッセージが、サブスクライバの再接続時に再配信されます。
JMS の詳細については、http://www.sun.com/software/products/message_queue/index.xml を参照してください。
JMS パブリッシャーでは、監査イベントが JMS テキストメッセージにフォーマットされます。次にこれらのテキストメッセージが、設定に応じてキューまたはトピックに送信されます。テキストメッセージは、設定に応じて XML または Universal Logging Format (ULF) としてフォーマットできます。
JMS パブリッシャータイプを有効にするには、「カスタム監査パブリッシャーを有効にする」の手順に従って、「新規パブリッシャー」ドロップダウンメニューから「JMS」を選択します。
JMS パブリッシャータイプを設定するには、「新規監査パブリッシャーの設定」フォームに入力します。このフォームの詳細については、i-Helps およびオンラインヘルプを参照してください。
JMX 監査ログパブリッシャーは、JMX (Java Management Extensions) クライアントで Identity Manager の監査ログアクティビティーを監視できるように、監査イベントをパブリッシュします。
JMX (Java Management Extensions) は、アプリケーション、システムオブジェクト、デバイス、およびサービス指向ネットワークの管理や監視を可能にする Java テクノロジです。管理/監視対象のエンティティーは、MBean (Managed Bean) と呼ばれるオブジェクトによって表されます。
Identity Manager の JMX 監査ログパブリッシャーでは、イベントの監査ログを監視します。イベントが検出されると、監査イベントレコードが JMX パブリッシャーによって MBean でラップされ、メモリーに保持されている一時履歴も更新されます。JMX クライアントには、イベントごとに個別の短い通知が送信されます。そのイベントが処理対象の場合、JMX クライアントから監査イベントをラップしている MBean に問い合わせを行なって詳細な情報を取得できます。
監査イベントレコードの詳細については、com.waveset.object.AuditEvent Javadoc を参照してください。Javadoc は REF キットから入手できます。REF キットについては、「カスタム監査パブリッシャーの開発」を参照してください。
適切な MBean から情報を取得するには、履歴シーケンス番号が必要です。この番号はイベント通知に含まれています。
各イベント通知に含まれる情報は次のとおりです。
種類。イベントの種類を示す文字列。文字列は、AuditEvent.<ObjectType>.<Action> の形式に従います。ObjectType および Action は、com.waveset.AuditEvent から返されます。たとえば、ロック解除イベントが送信されると、種類は AuditEvent.LighthouseAccount.Unlock となります。
シーケンス番号。MBean への情報の問い合わせに使用する履歴バッファーキー。
JMX パブリッシャータイプを有効にするには、「カスタム監査パブリッシャーを有効にする」の手順に従って、「新規パブリッシャー」ドロップダウンメニューから「JMX」を選択します。
JMX パブリッシャータイプを設定するには、「新規監査パブリッシャーの設定」フォームに入力します。このフォームの詳細については、i-Helps およびオンラインヘルプを参照してください。
「パブリッシャー名」。JMX 監査イベントパブリッシャーの一意の名前を入力します。
「履歴制限」。必要に応じてデフォルト値を変更し、パブリッシャーがメモリーに保持するイベント項目の数を指定します (デフォルトは 100)。
「テスト」をクリックして、「パブリッシャー名」が使用可能であることを確認します。
「OK」をクリックします。「新規監査パブリッシャーの設定」フォームが閉じます。
重要: 「保存」をクリックします。
JMX パブリッシャーの表示には JMX クライアントを使用します。次のスクリーンショットの作成では、JDK 1.5 に含まれている JConsole を使用しました。
JConsole を使用する場合は、IDM:type=AuditLog MBean を表示するプロセスへの接続を指定します。JConsole を JMX クライアントとして使用する場合の設定方法については、『Sun Identity Manager 8.1 System Administrator’s Guide』の「Viewing JMX Data」を参照してください。
JConsole の「通知」タブをクリックして監査イベントを表示します。通知のシーケンス番号に注意してください。シーケンス番号は、MBean に詳細な情報を問い合わせる際に必要です。
JConsole の「Operations」タブをクリックします。通知のシーケンス番号を使用して、イベントの詳細を MBean に照会します。各操作の先頭に「get」が付加され、「シーケンス」番号が唯一のパラメータになります。
MBean は、com.waveset.object.AuditEvent クラスに 1 対 1 でマッピングされます。表 10–19 に、MBean が提供する各属性と操作の説明を示します。
表 10–19 MBeanInfo 属性/操作の説明
属性/操作 |
説明 |
---|---|
AccountAttributesBlob |
変更された属性のリスト |
AccountId |
イベントと関連する AccountId |
Action |
イベント中に実行されたアクション |
AuditableAttributes |
監査可能な属性 |
ErrorString |
エラー文字列 |
Interface |
監査インタフェース |
MemberObjectGroupRefs |
メンバーオブジェクトグループ参照 |
ObjectName |
オブジェクト名 |
ObjectType |
オブジェクトタイプ |
OverflowAttributes |
すべてのオーバーフロー属性 |
Parameters |
すべてのパラメータ |
Reason |
イベントの理由 |
ResourceName |
イベントと関連するリソース |
RoleName |
イベントと関連するロール |
SubjectName |
イベントと関連するユーザーまたはサービス |
Server |
イベントの発生元サーバーの名前 |
Status |
監査イベントのステータス |
Timestamp |
監査イベントの日付と時刻 |
Jconsole で、「属性」タブをクリックします。属性の先頭に Current が付加され、システムに送信された最新の監査イベントがその属性に含まれていることを示します。