データエクスポータ機能を使用すると、ユーザー、ロール、その他のオブジェクトタイプを外部のデータウェアハウスに書き込むことができます。
この章では、データエクスポータの設定と維持に役立つ説明および手順を示します。データエクスポータの計画と実装については、『Sun Identity Manager Deployment Guide』の第 5 章「Data Exporter」を参照してください。
この章で説明する内容は次のとおりです。
Identity Manager は、分散システムおよびアプリケーション全体にわたってアイデンティティー管理関連データを格納し、処理します。全体のパフォーマンスを向上させるため、Identity Manager は通常のプロビジョニングやその他の日常的なアクティビティーで生成されるデータの一部を保持しません。たとえば、中間ステータスのワークフローアクティビティーとタスクインスタンスは、デフォルトで保持されません。Identity Manager が通常は破棄するデータのすべてまたは一部を収集する必要がある場合は、データエクスポータ機能を有効にすることができます。
データエクスポータを有効にすると、Identity Manager は指定したオブジェクト (データタイプ) に対する変更を検出するごとに、変更をリポジトリ内のテーブルにレコードとして格納します。これらのイベントはキューに入れられ、その後、タスクがそれらを外部のデータウェアハウスに書き込みます。(各タイプのデータをエクスポートする頻度を設定することができます。)エクスポートされたデータは、市販の変換、レポート、分析ツールを使ったクエリーおよび変換のベースとして、さらに処理または使用することができます。
データウェアハウスにデータをエクスポートすると、Identity Manager サーバーのパフォーマンスが低下するため、エクスポートするデータに対してビジネスニーズがある場合以外、この機能は有効にしないでください。
Identity Manager では、フォレンジッククエリーの作成と実行も可能です。フォレンジッククエリーは、データウェアハウスを検索して、指定された条件を満たすユーザーオブジェクトやロールオブジェクトを特定します。詳細については、「フォレンジッククエリーの設定」を参照してください。
データエクスポータはデフォルトでは無効にされるため、操作可能になるよう設定する必要があります。データエクスポータの設定では、設定を開始する前にいくつかの決定を行う必要があります。
エクスポートするデータタイプ
各データタイプのデータを収集するために使用する方法
各タイプのデータをエクスポートする頻度
各タイプのエクスポートされるスキーマに何を含めるか
カスタムのウェアハウスインタフェースコード (WIC) ファクトリクラスが必要か
データエクスポータが有効にされると、デフォルトの設定では、すべてのデータタイプのすべての属性がエクスポートされます。これにより、使用されないはずのウェアハウスの記憶領域が消費されて、Identity Manager とウェアハウスで不必要な処理負荷が発生する可能性があります。データウェアハウスは保存力が高く、あとでデータが使用される可能性がある場合にはデータを収集する傾向があります。エクスポートできるデータをすべてエクスポートする必要はありません。エクスポートするデータタイプを設定し、一部のイベントがエクスポートされないように制限することができます。
上記の点について決定したら、以下の手順に従ってデータエクスポータを実装します。
(省略可能) 選択したタイプのエクスポートスキーマをカスタマイズし、ウェアハウス DLL を再作成します。詳細については、『Sun Identity Manager Deployment Guide』の「Customizing Data Exporter」を参照してください。
ウェアハウスの RDBMS にユーザーアカウントを作成し、そのシステムでウェアハウス DDL を読み込みます。詳細については、『Sun Identity Manager Deployment Guide』の「Customizing Data Exporter」を参照してください。
「データエクスポータの設定」の説明に従って、データエクスポータを設定します。
データエクスポータをテストして正しく設定されたことを確認します。詳細については、「データエクスポータのテスト」を参照してください。
(省略可能) データウェアハウスに書き込まれるデータを検索できるフォレンジッククエリーを作成します。詳細については、「フォレンジッククエリーの設定」を参照してください。
JMX を使用し、ログファイルを監視して、データエクスポータを維持します。詳細については、「データエクスポータの維持」を参照してください。
データエクスポータの設定ページでは、保持するデータのタイプを定義し、エクスポートする属性を指定して、データをいつエクスポートするかをスケジュールできます。各データタイプは別個に設定できます。
管理者インタフェースで、メインメニューから「設定」をクリックします。「ウェアハウス」二次タブをクリックします。「データエクスポータの設定」ページが開きます。
読み取り接続と書き込み接続を定義するには、「接続の追加」ボタンをクリックします。「データベース接続の編集」ページが開きます。
このページにあるフィールドの設定を完了し、「保存」をクリックして「データエクスポータの設定」ページに戻ります。詳細については、「読み取り接続と書き込み接続の定義」を参照してください。
WIC クラスとデータベース接続を割り当てるには、「ウェアハウスの設定情報」セクションにある「編集」リンクをクリックします。「データエクスポータウェアハウスの設定」ページが開きます。
このページにあるフィールドの設定を完了し、「保存」をクリックして「データエクスポータの設定」ページに戻ります。詳細については、「ウェアハウスの設定情報の定義」を参照してください。
「ウェアハウスのモデル設定」テーブルで、データタイプのリンクをクリックします。「データエクスポータタイプの設定」ページが開きます。
このページにある「エクスポート」タブ、「属性」タブ、および「スケジュール」タブの設定を完了し、「保存」をクリックして「データエクスポータの設定」ページに戻ります。詳細については、「ウェアハウスモデルの設定」を参照してください。
すべてのデータタイプについてこの手順を繰り返します。
各データタイプのエクスポートの前後にどのワークフローを実行するかを設定するには、「エクスポータ自動化」セクションの「編集」リンクをクリックします。「データエクスポータ自動化の設定」ページが表示されます。
このページにあるフィールドの設定を完了し、「保存」をクリックして「データエクスポータの設定」ページに戻ります。詳細については、マニュアルを参照してください。
エクスポートタスクデーモンを設定するには、「ウェアハウスのタスク設定」セクションにある「編集」リンクをクリックします。「データエクスポータウェアハウスの設定」ページが開きます。
このページにあるフィールドの設定を完了し、「保存」をクリックして「データエクスポータの設定」ページに戻ります。詳細については、「ウェアハウスタスクの設定」を参照してください。
これらの手順が完了すると、エクスポートの操作がすべて可能になります。エクスポートが有効にされると、エクスポートのためにデータレコードのキューイングが開始されます。エクスポートタスクを有効にしないと、キューテーブルがいっぱいになり、キューイングが中断されます。一般に、大きなバッチよりも小さなバッチを (より頻繁に) エクスポートする方が効率的ですが、エクスポートはウェアハウス自体での書き込みが可能かどうかに左右されるため、別の理由による制約を受けることがあります。
オプションの作業として、最大キューサイズを設定します。詳細については、「設定オブジェクトの変更」を参照してください。
Identity Manager は、エクスポートサイクル中に書き込み接続を使用します。読み取り接続は、ウェアハウス内に現在いくつのレコードがあるかを (ウェアハウスの設定中に) 示し、フォレンジッククエリーインタフェースにサービスを提供するために使用されます。
ウェアハウスの接続は、アプリケーションサーバーのデータソース、JDBC 接続、またはデータベースリソースへの参照として定義できます。JDBC 接続またはデータベースリソースが定義された場合、データのエクスポートでは、書き込み操作中に少数の接続が集中的に使用され、その後、すべての接続が閉じられます。データエクスポータが読み取り接続を使用するのは、ウェアハウスの設定中、およびフォレンジッククエリーの実行中のみで、それらの接続は操作が完了するとすぐに閉じられます。
エクスポータは、書き込み接続と読み取り接続に同じスキーマを使用するので、同じ接続情報を両方のために使用できます。ただし、別個の接続がある場合、配備時にはウェアハウスのステージングテーブルのセットに対して書き込みを行い、それらのテーブルを実際のウェアハウスに変換し、ウェアハウステーブルを Identity Manager の読み込み元になるデータマートに変換することができます。
Identity Manager がウェアハウスから読み取りを行えないように、「データエクスポータの設定」フォームを編集できます。このフォームには、includeWarehouseCount プロパティーが含まれています。これは、Identity Manager でウェアハウスに問い合わせを行い、各データタイプのレコード数を表示するためのプロパティーです。この機能を無効にするには、「データエクスポータの設定」フォームをコピーし、includeWarehouseCount プロパティーの値を true に変更して、カスタマイズしたフォームをインポートします。
「データエクスポータの設定」ページから、「接続の追加」ボタンをクリックします。
「接続タイプ」ドロップダウンメニューからオプションを選択し、Identity Manager でデータウェアハウスに対する読み取り接続または書き込み接続を作成する方法を指定します。
「JDBC」。Java Database Connectivity (JDBC) アプリケーションプログラミングインタフェースを使用してデータベースに接続します。ウェアハウスインタフェースコードによって接続プールが提供されます。
「リソース」。リソースで定義されている接続情報を使用します。ウェアハウスインタフェースコードによって接続プールが提供されます。
「データソース」。接続の管理とプールのため、基盤となるアプリケーションサーバーを使用します。このタイプの接続では、アプリケーションサーバーからの接続が必要とされます。
ページに表示されるフィールドは、「接続タイプ」ドロップダウンメニューで選択したオプションに応じて変化します。データベース接続の設定の詳細については、オンラインヘルプを参照してください。
「保存」をクリックして設定の変更を保存し、「データエクスポータの設定」ページに戻ります。
別個の読み取り接続と書き込み接続を使用する場合は、この手順を繰り返します。
ウェアハウスを設定するには、読み取り接続と書き込み接続を選択し、ウェアハウスインタフェースコードのファクトリクラスを指定する必要があります。WIC ファクトリクラスは、Identity Manager とウェアハウスの間のインタフェースを提供します。Identity Manager にはデフォルトのコード実装が用意されていますが、独自に作成することもできます。カスタムファクトリクラスの作成については、『Sun Identity Manager Deployment Guide』の第 5 章「Data Exporter」を参照してください。
ファクトリクラスを含む jar ファイルとサポート用の jar ファイルは、エクスポートタスクを実行する Identity Manager サーバーと、データエクスポータを設定するすべてのサーバーの $WSHOME/exporter ディレクトリに配置する必要があります。データをエクスポートできるのは常に 1 つの Identity Manager サーバーのみです。
「データエクスポータの設定」ページで、「ウェアハウスの設定情報」セクションにある「編集」リンクをクリックします。
「ウェアハウスインタフェースのコードファクトリクラス名」フィールドに値を指定します。インテグレータがカスタムクラスを作成していない場合は、com.sun.idm.warehouse.base.Factory の値を入力します。
「接続の読み取り」および「接続の書き込み」ドロップダウンメニューの両方からオプションを選択し、接続を指定します。
「保存」をクリックして設定の変更を保存し、「データエクスポータの設定」ページに戻ります。
エクスポート可能な各データタイプには、そのタイプが、エクスポートされるかどうか、どのようにエクスポートされるか、およびいつエクスポートされるかの制御に使用される一連のオプションがあります。データのエクスポートによって Identity Manager サーバーの負荷が増加するため、ビジネス上の利点があるデータタイプについてのみ、エクスポートを有効にしてください。
次の表に、エクスポート可能な各データタイプの説明を示します。
表 16–1 サポートされるデータタイプ
データ型 |
説明 |
---|---|
Account |
User と ResourceAccount の間のリンクを含むレコード |
AdminGroup |
すべての ObjectGroups で利用可能な Identity Manager 権限のグループ |
AdminRole |
1 つまたは複数の ObjectGroups に割り当てられた権限 |
AuditPolicy |
Identity Manager オブジェクトに対して評価され、ビジネスポリシーへのコンプライアンスを判定する規則の集合 |
ComplianceViolation |
AuditPolicy に対するユーザーのコンプライアンス違反を含むレコード |
Entitlement |
特定の User のアテステーションのリストを含むレコード |
LogRecord |
1 つの監査レコードを含むレコード |
ObjectGroup |
組織としてモデルになっているセキュリテーィコンテナ |
Resource |
アカウントがプロビジョニングされる場所としてのシステムまたはアプリケーション |
ResourceAccount |
特定の Resource でアカウントを構成している一連の属性 |
Role |
アクセス用の論理コンテナ |
Rule |
Identity Manager で実行できるロジックのブロック |
TaskInstance |
実行中のプロセスまたは完了したプロセスを示すレコード |
User |
0 個以上のアカウントを含む論理ユーザー |
WorkflowActivity |
Identity Manager ワークフローの 1 つのアクティビティー |
WorkItem |
Identity Manager ワークフローで実行する手動のアクション |
「データエクスポータの設定」ページから、データタイプのリンクをクリックします。
「エクスポート」タブで、このデータタイプをエクスポートするかどうかを指定します。このデータタイプをエクスポートしない場合は、「エクスポート」チェックボックスを選択解除して「保存」をクリックします。エクスポートする場合はこの「エクスポート」タブで、必要に応じて残りのオプションを選択します。
「クエリーを許可」。モデルを照合できるかどうかを決定します。
「すべてをキューに入れる」。このタイプのオブジェクトに対するすべての変更を収集します。このオプションを選択すると、エクスポータに大きな処理負荷がかかる可能性があります。このオプションは慎重に使用してください。
「削除結果を収集」。このタイプの削除されたオブジェクトをすべて記録します。このオプションを選択すると、エクスポータに大きな処理負荷がかかる可能性があります。このオプションは慎重に使用してください。
「属性」タブでは、フォレンジッククエリーの一部として指定することができる属性と、クエリー結果に表示することができる属性を選択できます。管理者インタフェースからデフォルトの属性を削除することはできません。デフォルト属性の変更については、『Sun Identity Manager Deployment Guide』の第 1 章「Working with Attributes」を参照してください。
新しい属性名には次の特性があります。
attrName — この属性は最上位で、スカラーです。
attrName[] — この属性はリスト値がある最上位属性で、リスト内の要素はスカラーです。
attrName[’ key’] — この属性にはマップ値が格納され、指定されたキーを持つマップの値が必要です。
attrName[]. name2 — この属性はリスト値がある最上位属性で、リスト内の要素は構造体です。name2 はアクセスする構造体の属性です。
属性を EXT_RESOURCEACCOUNT_ACCTATTR テーブルにエクスポートする場合は、エクスポートする各属性の「監査」ボックスを選択する必要があります。
「スケジュール」タブで、このデータタイプと関連付けられている情報をエクスポートする頻度を指定します。サイクルの基準は、サーバーでの午前零時です。20 分ごとのサイクルであれば、指定の時間と、その時間の 20 分後および 40 分後にエクスポートが行われます。エクスポートがスケジュールされたサイクルより長くかかった場合は、次のサイクルがスキップされます。たとえば、20 分で定義されたサイクルが午前 0 時に開始される場合、エクスポートの完了までに 25 分かかると、次のエクスポートは午前 0 時 40 分に開始されます。午前 0 時 20 分にスケジュールされていたエクスポートは実行されません。
Identity Manager では、データのエクスポートの前後に実行するワークフローを指定できます。
Cycle Start ワークフローを使用すると、エクスポートの取り消しを保証するイベントが発生したときに、エクスポートの実行を禁止できます。たとえば、エクスポートの実行がスケジュールされている時刻に、ステージングテーブルに対して読み取りまたは書き込みを行うアプリケーションで排他的アクセスが必要となった場合は、このエクスポートを取り消す必要があります。ワークフローは 1 の値を返して、エクスポートを取り消します。Identity Manager は、エクスポートがスキップされたことを示す監査レコードを作成し、エラーの結果を示します。ワークフローが 0 を返して、エラーが発生していない場合は、データタイプがエクスポートされます。
Cycle Complete ワークフローは、すべてのレコードがエクスポートされたあとに実行されます。通常、このワークフローはエクスポートしたデータを処理するために、ほかのアプリケーションをトリガーします。このワークフローが完了したあと、エクスポータはほかのデータタイプのエクスポートを確認します。
サンプルワークフローは、$WSHOME/sample/web/exporter.xml ファイルにあります。エクスポータワークフローの subtype は DATA_EXPORT_AUTOMATION で、authType は WarehouseConfig です。
「データエクスポータの設定」ページで、「エクスポータ自動化」セクションにある「編集」リンクをクリックします。
必要に応じて、「サイクルの開始ワークフロー」ドロップダウンメニューから、エクスポートの前に実行するワークフローを選択します。
必要に応じて、「サイクルの開始ワークフロー」ドロップダウンメニューから、エクスポートのあとに実行するワークフローを選択します。
専用サーバーでエクスポートタスクを実行することは必須ではありませんが、大量のデータをエクスポートする予定であれば、専用サーバーの利用を検討してください。エクスポートタスクでは、データが効率的に Identity Manager からウェアハウスに転送されますが、エクスポート操作中には CPU が最大限に使用されます。専用サーバーを利用しない場合は、サーバーでの対話型のトラフィックの処理を制限する必要があります。 これは、大量のデータのエクスポート中には応答時間が大幅に増加するためです。
「データエクスポータの設定」ページで、「ウェアハウスのタスク設定」セクションにある「編集」リンクをクリックします。
「起動モード」ドロップダウンメニューからオプションを選択し、Identity Manager の起動時にウェアハウスタスクを自動的に開始するかどうかを指定します。「無効」を選択すると、タスクを手動で開始する必要があることになります。
自分の管理アカウントでエクスポータタスクが実行されるようにする場合は、「自分でタスクを実行」チェックボックスをオンにします。
タスクを実行できるサーバーを選択します。複数のサーバーを指定できますが、任意の時点で実行できるウェアハウスタスクは 1 つだけです。タスクを実行するサーバーが停止している場合、スケジューラは自動的に、リストに含まれる別のサーバーでタスクを再開します (リストがある場合)。
「キュー読み取りブロックのサイズ」フィールドでは、書き込みの前にキューからメモリーバッファーに読み取るレコードの数を指定します。このフィールドのデフォルト値は、ほとんどのエクスポートで適切です。Identity Manager リポジトリサーバーがウェアハウスサーバーに比べて低速である場合は、この値を大きくします。
「キュー書き込みブロックのサイズ」フィールドでは、1 つのトランザクションでウェアハウスに書き込むレコードの数を指定します。
「キュードレインスレッドの数」フィールドでは、キューにあるレコードの読み取りに使用する Identity Manager スレッドの数を指定します。キューテーブルに異なるタイプのレコードが多数ある場合には、この数を増やします。キューテーブルのデータタイプの数が少ない場合はこの値を減らします。
「保存」をクリックして設定の変更を保存し、「データエクスポータの設定」ページに戻ります。
データエクスポータが設定されて動作可能になると、キューに入れるよう設定されたすべてのデータタイプが、内部キューテーブルに収集されます。デフォルトではこのテーブルに上限はありませんが、Data Warehouse Configuration 設定オブジェクトを編集することで設定が可能です。このオブジェクトには、warehouseConfig という名前の入れ子になったオブジェクトがあります。次の行を warehouseConfig オブジェクトに追加します。
<Attribute name=’maxQueueSize’ value=’YourValue’/>
maxQueueSize の値は、231 より小さい任意の正の整数です。データエクスポータは、制限に達するとキューを無効にします。生成されたデータは、キューが空にされるまでエクスポートできません。
通常の Identity Manager の動作では、変更されたレコードが 1 時間に数千生成されることもあるため、キューテーブルが急速に拡大する場合があります。キューテーブルは Identity Manager リポジトリ内にあるため、このテーブルの拡大によって RDBMS 内の表スペースが使われ、表スペースが使い尽くされる可能性があります。表スペースの容量に限度がある場合は、キューに上限を設定することが必要になる場合があります。
キューテーブルのサイズを監視するには、データキュー JMX Mbean を使用します。詳細については、「データエクスポータの監視」を参照してください。
データエクスポータは、正しく設定された後、バックグラウンドプロセスとして動作し、設定された間隔でウェアハウスにデータを送信します。エクスポータをオンデマンドで実行するには、「データウェアハウスエクスポータ起動ツール」のタスクを使用します。
ウェアハウスタスクを無効にします。詳細については、「ウェアハウスタスクの設定」を参照してください。
メインメニューの「サーバータスク」をクリックします。次に、「タスクの実行」二次タブをクリックします。「利用可能なタスク」ページが開きます。
「データウェアハウスエクスポータ起動ツール」リンクをクリックします。「タスクの起動」ページが開きます。
「デバッグオプション」チェックボックスを選択して追加のオプションを表示します。
「初期 LastMods を無視」チェックボックスを選択します。これによりエクスポータは、Identity Manager リポジトリ内のエクスポート済みレコードを判別するために使用する「最後にポーリングされた」タイムスタンプを無視します。このオプションを選択すると、Identity Manager リポジトリ内にある、選択したタイプのレコードがすべてエクスポートされます。
「一度エクスポートする」リストから、どのタイプのデータをエクスポートするかを選択します。「一度エクスポートする」リストでどのタイプも選択しないと、エクスポートタスクはデーモンとして実行され、前に定義されたスケジュールに基づいてエクスポートを行います。1 つ以上のデータタイプを選択すると、Identity Manager はそれらのタイプをただちにエクスポートし、エクスポートタスクが終了します。
ページのほかのフィールドの値を必要に応じて設定します。
「起動」をクリックしてタスクを開始します。
フォレンジッククエリーを使用すると、データウェアハウスに格納されているデータを Identity Manager で読み取ることができます。このクエリーは、ユーザー、ロール、または関連するデータタイプの現在値または履歴値に基づいて、ユーザーやロールを特定できます。フォレンジッククエリーは「ユーザーの検索」や「ロールの検索」のレポートと似ていますが、履歴値に対して一致条件を評価できる点が異なります。 また、照会しようとしているユーザーやロールとはデータタイプが異なる属性を検索できる点が異なります。
フォレンジッククエリーの目的は、Identity Manager を使用して結果に対するアクションを実行することです。フォレンジッククエリーは汎用のレポートツールではありません。
フォレンジッククエリーでは次のような質問をすることができます。
時間 A と時間 B の間にシステム X にアクセスしたのはどのユーザーか。 そのアクセスを承認したのはだれか。
過去 48 時間でいくつのプロビジョニングリクエストが処理されたか。 各リクエストの所要時間はどれだけだったか。
フォレンジッククエリーの結果は、保存することができません。ウェアハウスデータに関する一般的なレポートは、市販のレポートツールで作成するようにしてださい。
フォレンジッククエリーでは、ユーザーオブジェクトやロールオブジェクトを検索できます。クエリーは非常に複雑にすることができ、作成者は関連するデータタイプについて 1 つ以上の属性の条件を選択できます。ユーザーのフォレンジッククエリーでは、データタイプが User、Account、ResourceAccount、Role、Entitlement、および WorkItem である属性を検索できます。ロールのフォレンジッククエリーでは、データタイプが Role、User、および WorkItem である属性を検索できます。
1 つのデータタイプ内で、すべての属性条件の論理積が求められるため、一致と判定されるにはすべての条件が満たされる必要があります。デフォルトでは、データタイプ全体にわたる一致の論理積が求められますが、「OR の使用」チェックボックスを選択すると、データタイプ全体にわたる一致の論理和が求められます。
ウェアハウスでは、1 つのユーザーオブジェクトまたはロールオブジェクトについて複数のレコードが含まれていることがあり、1 つのクエリーで、同一のユーザーまたはロールについて複数の一致が返される可能性があります。これらの一致を区別する助けになるように、日付の範囲によって各データタイプに制約を設定できます。 そのようにすると、指定した日付の範囲にあるレコードのみが一致だと見なされます。関連するデータタイプはそれぞれ日付の範囲で制約を設定できるため、次の形式のクエリーを発行することができます。
find all Users with Resource Account on ERP1 between May and July 2005 who were attested by Fred Jones between June and August 2005 |
日付の範囲は午前零時から午前零時です。たとえば、範囲が 2007 年 5 月 3 日から 2007 年 5 月 5 日であれば 48 時間です。2007 年 5 月 5 日からのレコードは含まれません。
各属性条件のオペランド (比較対象の値) は、クエリー定義の一部として指定する必要があります。スキーマでは、一部の属性で可能な値のセットが限定されるよう制限が設定されており、その他の属性には制限がありません。たとえば、ほとんどのデータフィールドは、YYYY-MM-DD HH:mm:ss の形式で入力する必要があります。
ウェアハウス内のデータ量が多い可能性があり、クエリーが複雑であるため、クエリーの結果が生成されるまで長い時間がかかることがあります。フォレンジッククエリーの実行中にクエリーページから移動すると、クエリーの結果を確認できなくなります。
管理者インタフェースで、メインメニューの「コンプライアンス」をクリックします。
「監査ポリシー」ページ (「ポリシーの管理」タブ) が開きます。
「フォレンジッククエリー」二次タブをクリックします。
「データウェアハウスの検索」ページが開きます。
「タイプ」ドロップダウンメニューから、ユーザーレコードとロールレコードのどちらを検索するかを選択します。
照会した各データタイプの結果について Identity Manager で論理和を求める場合は、「OR の使用」チェックボックスを選択します。デフォルトでは、結果の論理積を求める処理が実行されます。
フォレンジッククエリーに含める予定のデータタイプが示されているタブを選択します。
「条件の追加」をクリックします。一連のドロップダウンメニューが表示されます。
左側のドロップダウンメニューからオペランド (チェックする条件) を選択し、右側のドロップダウンメニューから実行する比較のタイプを選択します。次に、検索する文字列または整数を入力します。使用できるオペランドのリストは外部のスキーマで定義されています。各オペランドの説明については、オンラインヘルプを参照してください。
オプションの作業として、日付の範囲を選択してクエリーの範囲を絞り込みます。
必要に応じて、現在選択されているデータタイプにさらに条件を追加します。フォレンジッククエリーの定義の一部になるすべてのデータタイプについて、この手順を繰り返します。
選択可能な属性から、フォレンジッククエリーの結果に表示する属性を選択します。
「結果表示を次の件数に限定」フィールドに値を指定します。複数のデータタイプからの条件を使用する場合、各タイプのサブクエリーに制限が適用され、最終結果はすべてのサブクエリーの共通部分になります。そのため、サブクエリーの制限が原因で、最終結果から一部のレコードが除外される場合があります。
「検索」をクリックしてフォレンジッククエリーをただちに実行するか、クエリーを再利用できるように「クエリーの保存」をクリックします。フォレンジッククエリーの再使用については、「フォレンジッククエリーの保存」を参照してください。
クエリーを設定 (オプションの作業として、クエリーを実行して必要な結果が生成されることを確認) したら、あとで実行するためにクエリーを保存できます。
「データウェアハウスの検索」ページから、「クエリーの保存」をクリックします。「フォレンジッククエリーの保存」ページが開きます。
クエリーの名前を説明を指定します。
「条件値の保存」チェックボックスを選択し、「データウェアハウスの検索」ページで入力した条件の値 (文字列と整数) を保存します。このチェックボックスを選択しない場合、保存したフォレンジッククエリーはテンプレートとして機能し、クエリーを実行するたびに値を入力する必要があります。
保存されたクエリーはどのユーザーでも実行できますが、デフォルトでは、クエリーを修正できるのはクエリーの作成者だけです。ほかのユーザーがクエリーを変更できるようにするには、「ほかのユーザーがこのクエリーを変更することを許可」チェックボックスを選択します。
クエリーではユーザーオブジェクトまたはロールオブジェクトが返されるため、結果にオブジェクトのどちらのオブジェクトの属性を表示するかを選択できます。「表示する属性」リストに含まれない属性を表示する場合は、「データエクスポータの設定」ページに移動し、表示可能な新しい属性をユーザーまたはロールのタイプに追加します。
任意のユーザーが保存した任意のクエリーを読み込むことができますが、変更できるのは自分が作成したクエリーか、ほかのユーザーが作成したもののうち、だれでも修正可能とマークされたクエリーのみです。
「データウェアハウスの検索」ページから、「クエリーの読み込み」をクリックします。「フォレンジッククエリーの読み込み」ページが開きます。クエリーがテンプレートとして保存されている場合は、「クエリーの概要」列に「未完了のクエリー」と表示されます。
クエリーの左側にあるチェックボックスを選択し、「クエリーの読み込み」をクリックします。
この節では、データエクスポータの状態を追跡する方法を説明します。この情報は、次のトピックで構成されています。
エクスポータが設定されて動作可能になったら、継続的な動作の確認のためにエクスポータの監視を行うことを選択できます。エクスポータには、エクスポータがどのように動作しているかを判断する場合に役立つ JMX Beans がいくつか用意されています。これらの JMX Beans には、エクスポータの平均読み取り/書き込みレート、内部メモリーキューの現在/最大のサイズ、および持続的なキューのサイズについての統計情報が含まれます。エクスポータでは、エクスポート中に監査レコードも作成されます。 各データタイプの 1 サイクルごとに 1 つのレコードが作成されます。監査レコードには、そのタイプのレコードがエクスポートされた数や、エクスポートの所要時間が含まれます。
データエクスポータには、エクスポータの監視を行う次の JMX 管理 Beans が用意されています。
表 16–2 JMX 管理 Beans
Beans の名前 |
説明 |
---|---|
DataExporter |
現在キューにあるエクスポートの数と、キューの上限についての情報を格納しています。 |
DataQueue |
現在キューにありキャッシュされているエクスポートの数と、キャッシュへの到着レートについての情報を格納しています。 |
ExporterTask |
Identity Manager からのエクスポートの読み取り数、ウェアハウスに対する書き込み数、読み取りと書き込みのレート (レコード数/秒)、およびエラーの数についての情報を格納しています。 |
通常の Identity Manager の操作中にエクスポートレコードをキューテーブルに入れるように、データエクスポータを設定できます。キューは、場合によっては多数のレコードに応じて拡張し、サーバーの再起動後も保持する必要があるため、Identity Manager リポジトリ内のテーブルによって保持されます。一般的にリポジトリへの書き込みは、通常の Identity Manager 操作の速度を低下させるため、レコードがリポジトリ内で持続可能になるまで、キューは少量のメモリーキャッシュを使用してメモリー内にレコードをバッファーします。
DataQueue MBean 属性は、1 台の Identity Manager サーバー上でメモリーのキューに入れられたレコードの最大数を表示するように計画できます。バランスのとれたシステムでは、メモリーキャッシュ内のレコード数が少なく、数がすばやくゼロに向かうはずです。この数が大きくなったり (数千単位)、数秒以内にゼロに戻らなかったりすることが観察される場合、リポジトリの書き込みパフォーマンスを調査する必要があります。
ExportTask MBeans には、2 種類のエラー数の情報が含まれています。 1 つが読み取り、もう 1 つが書き込みのエラーです。これらの数はゼロであるべきですが、特に書き込み中には、エラーが発生することがある理由がいくつか存在します。もっともよくある書き込みエラーは、エクスポートされたデータがウェアハウスのテーブル列内に入らないことから発生します。 これは一般的に、文字列のオーバーフローです。エクスポートされる文字列データにはサイズの限度がないものがあります。 この場合、エクスポートテーブル列に上限が設定されている必要があります。
Identity Manager には、「監査ログ」および「システムログ」というサイズ制限のない 2 セットのオブジェクトがあります。データエクスポータは、ログテーブルに関連するメンテナンスの問題のいくつかに対処しています。
Identity Manager は不変の監査レコードを監査ログに書き込み、実行する操作の監査証跡の履歴として提供します。Identity Manager はこれらのレコードを特定のレポートで使用します。また、レコードのデータは管理者インタフェースに表示できます。しかし、監査ログは限度なく拡大しますが、あまり速くない速度で拡大するため、配備担当者はいつ監査ログの切り捨てを行うかを判断する必要があります。データエクスポータの前に、切り捨てに先立ってレコードを保持したい場合は、リポジトリからテーブルをダンプする必要があります。データエクスポータが有効にされていて、ログレコードをエクスポートするよう設定されている場合、古いレコードはウェアハウスに保持され、Identity Manager が必要に応じて監査テーブルを切り捨てることがあります。
システムログは、監査ログと同じ不変のプロパティーを持っていますが、通常、監査ログと同じ頻度では生成されません。データエクスポータはシステムログをエクスポートしません。システムログを切り捨てて古いレコードを保持するには、リポジトリ内のテーブルをダンプする必要があります。