この章の内容は次のとおりです。
Oracle Audit Vaultでは、複数のデータベースから監査データを収集し、一連の監査レポートにまとめます。監査データは、複数のOracleデータベース(Real Application Clusters、Oracle Data Guardを含む)およびMicrosoft SQL Serverデータベースから収集できます。
Oracle Audit Vaultを使用するには、管理者がAudit Vaultサーバーを構成してデータベース・ソースに接続します。すると、これらのデータベースが生成する監査データがOracle Audit Vaultによって収集、分類された後、各種レポートで提供されます。Oracleデータベースの場合は、ポリシーを作成してREDOログ・ファイルからデータを収集できます。OracleとSQL Serverのどちらのデータベース製品にも、アラートを作成できます。Oracle Audit Vaultレポートの他に、サード・パーティ・ツール(Oracle Business Intelligenceなど)を使用してレポートを設計することも可能です。Audit Vaultポリシー、アラートおよびレポートの管理には、Audit Vaultコンソールを使用します。
Oracle Audit Vaultのデフォルト・レポートは、サーベンス・オクスリー法によって義務付けられた規則など、標準的なコンプライアンス規則を満たすように設計されています。特定のニーズに合せて、これらのレポートのユーザー定義版を作成できます。たとえば、通常業務時間外に発生したアクティビティや特定のユーザーのアクティビティを追跡するためのレポートを作成できます。
ポリシーおよびアラートの機能は、Oracleデータベースに対するセキュリティ脅威の検出に役立ちます。たとえば、機密性が高いアプリケーション・データ(従業員の給与など)をシステム管理者が参照しようとすると、アラートで通知することが可能です。
Oracle Audit Vaultでは監査設定を一元管理するため、監査者の仕事は簡単かつ効率的になります。監査者は、監査情報の作成、管理および監視を1つの場所から行うことができます。そのため、企業のコンプライアンス・ポリシーを外部の監査者に説明する必要があるとき、それが簡単にできるようになります。
Oracle Audit Vaultによって収集された監査データは、独自の安全なデータ・ウェアハウス・リポジトリに格納されるため、管理者はOracle Database VaultおよびOracle Advanced Securityを使用して監査データの改ざんを防止できます。
Oracle Audit Vaultを使用するには、次の一般的な手順に従います。
監査データを収集するデータベースで監査が有効になっていることと、Oracle Audit Vaultコレクタが機能していることを確認します。一部のデータベース管理者は、パフォーマンス上の理由から監査を無効にしている場合があるため、常に監査が有効になっていると想定できるわけではありません。Oracle Databaseの場合、データベース管理者が実施を考慮する必要がある、推奨監査設定があります。また、データベース管理者は、これらのデータベースが、監査データをOracle Audit Vaultサーバーに送信するように適切に構成されていることを確認する必要があります。
Audit Vaultコンソールを使用して、Oracle Databaseソース・データベース用の監査ポリシーを管理します。Audit Vaultコンソールの起動方法は、1.4項を参照してください。
SQL文。たとえば、SELECT
やUPDATE
など、データベースに問い合せたりデータを変更する際にユーザーが使用する文を監査できます。
データベース・スキーマ・オブジェクト。ユーザーがデータベース・オブジェクト、表またはビューに対して実行できるアクションを監査できます。
データベース権限。SELECT ANY TABLE
など、システム権限の使用を監査できます。この種の監査では、正常終了するために監査対象の権限を必要とするSQL文が記録されます。
ファイングレイン監査条件。企業ネットワークの外部からIPアドレスが使用されているかどうか、あるいは特定の表の列が変更されているかどうかなど、データベースで発生する特定のアクティビティを監査できます。
REDOログ・データ。REDOログ・ファイルからデータを取得できます。REDOログ・ファイルには、データベースで発生するすべての変更が格納されます。Oracle Databaseの各インスタンスには、インスタンス障害の場合にデータベースを保護するためにREDOログが関連付けられています。Oracle Audit Vaultでは、Oracle DatabaseによってデータベースREDOログがスキャンされるときに確認が必要なDMLおよびDDL変更を取得ルールで指定します。
SQL文、オブジェクト、権限およびファイングレイン監査データには、監査ポリシーを作成します。REDOログ・データには、取得ルールを作成します。
Audit Vaultポリシーおよび取得ルールの作成方法は、第2章「Oracle Audit Vaultポリシーおよびアラートの作成」を参照してください。
必要に応じて、OracleまたはSQL Serverのデータベースで特定のイベントが発生するとトリガーされる警告またはクリティカル・アラートを作成できます。Oracle Audit Vaultアラートを使用すると脅威を検出できるため、内部および外部ポリシーに従ってシステムを維持するために役立ちます。
作成したアラートは、Audit Vaultコンソールのホームページ(「ホーム」セカンダリ・タブの下)を使用して管理できます。
アラートの作成および監視方法は、2.11項を参照してください。
Oracle Audit Vaultでは、監査データおよびREDOログ・ファイル・データがデータベース・ソースからレポートに自動的に移入されます。この監査データは、Audit Vaultコンソールの「デフォルト・レポート」ページと「ユーザー定義レポート」ページに示されるレポートを選択すると表示できます。レポートは、コンプライアンス規則に使用されるカテゴリなど、一般的に使用されるカテゴリ別に分類されます。
必要な場合は、特定のデータをフィルタ処理するユーザー定義のカスタム・レポートを作成できます。Oracle Audit Vaultにはオープン・データ・ウェアハウス・スキーマがあり、Oracle Application Express、Oracle BI Publisherなどのビジネス・インテリジェンス・ツールまたはサード・パーティのビジネス・インテリジェンス・ツールを使用したカスタム・レポートの作成に使用できます。
Oracle Audit Vaultレポートの表示方法およびカスタマイズ方法は、第3章「Oracle Audit Vaultレポートの使用方法」を参照してください。
この項の内容は次のとおりです。
Oracle Audit Vaultでソース・データベースから監査データを収集するには、それらのデータベースで監査を有効にする必要があります。Oracle Databaseでは、データベース管理者が次の方法のいずれかを使用して、監査が有効であるかどうかを確認できます。
標準監査が有効であることの確認: 管理権限でSQL*Plusにログインした後、AUDIT_TRAIL
初期化パラメータの値を確認します。このパラメータによって監査は有効または無効になります。
次に例を示します。
sqlplus SYSTEM
Enter password: password
Connected.
SQL> SHOW PARAMETER AUDIT_TRAIL
NAME TYPE VALUE
---------------------- ----------- -----------
audit_trail string NONE
この例は、AUDIT_TRAIL
パラメータがNONE
に設定されていることを示しています。AUDIT_TRAIL
パラメータがNONE
に設定されていると、データベースでファイングレイン監査が使用されていない場合、監査は行われません。SYSDBA
権限を持つデータベース管理者が標準監査を有効にすることができ、次にSYSOPER
権限を持つ管理者がデータベースを再起動することができます。
たとえば、AUDIT_TRAIL
をDB
(監査を有効にし、SYS.AUD$
システム表に監査データを送信する)に設定した後、データベースを再起動するには、SQL*Plusにログインして次のように入力します。
SQL> CONNECT SYS/AS SYSDBA Enter password: password Connected. SQL> ALTER SYSTEM SET AUDIT_TRAIL=DB SCOPE=SPFILE; System altered. SQL> CONNECT SYS/AS SYSOPER Enter password: password Connected. SQL> SHUTDOWN Database closed. Database dismounted. SQL> STARTUP ORACLE instance started.
ファイングレイン監査が有効であることの確認: データベースでファイングレイン監査が使用されている場合、AUDIT_TRAIL
パラメータを設定する必要はありません。ファイングレイン監査では、監査ポリシーをPL/SQLパッケージ内に作成します。ソース・データベースのV$OPTION
表への問合せを実行して、ファイングレイン監査が有効であることを確認できます。V$OPTION
で指定するパラメータ値(この場合Fine-grained Auditing
)では、大/小文字が区別されます。
次に例を示します。
SQL> SELECT * FROM V$OPTION WHERE PARAMETER = 'Fine-grained Auditing'; PARAMETER VALUE ----------------------- --------- Fine-grained Auditing TRUE
この例は、ファイングレイン監査が有効であることを示しています。問合せがFALSE
を返した場合は、Oracle Databaseセキュリティ管理者にこのデータベースで必要なファイングレイン監査を有効にして構成するように依頼します。
次の問合せを実行するように管理者に依頼することで、ファイングレイン監査レコードが作成されているかどうかを確認できます。
SQL> SELECT COUNT(*) FROM DBA_FGA_AUDIT_TRAIL; COUNT(*) ---------- 212
この例では、212件のファイングレイン監査レコードが作成されていることを示しています。
監査が有効であることをデータベース管理者が確認した後、データベースの次の部分で監査を有効にしておくことをお薦めします。
データベース・スキーマまたは構造の変更: 次のAUDIT
SQL文の設定を使用します。
AUDIT ALTER ANY TABLE BY ACCESS;
AUDIT CREATE ANY TABLE BY ACCESS;
AUDIT DROP ANY TABLE BY ACCESS;
AUDIT CREATE ANY PROCEDURE BY ACCESS;
AUDIT DROP ANY PROCEDURE BY ACCESS;
AUDIT ALTER ANY PROCEDURE BY ACCESS;
AUDIT CREATE EXTERNAL JOB BY ACCESS;
AUDIT CREATE ANY JOB BY ACCESS;
AUDIT CREATE ANY LIBRARY BY ACCESS;
AUDIT ALTER DATABASE BY ACCESS;
AUDIT ALTER SYSTEM BY ACCESS;
データベース・アクセスおよび権限: 次のAUDIT
SQL文を使用します。
AUDIT AUDIT SYSTEM BY ACCESS;
AUDIT CREATE PUBLIC DATABASE LINK BY ACCESS;
AUDIT EXEMPT ACCESS POLICY BY ACCESS;
AUDIT ALTER USER BY ACCESS;
AUDIT CREATE USER BY ACCESS;
AUDIT ROLE BY ACCESS;
AUDIT CREATE SESSION BY ACCESS;
AUDIT DROP USER BY ACCESS;
AUDIT GRANT ANY PRIVILEGE BY ACCESS;
AUDIT GRANT ANY OBJECT PRIVILEGE BY ACCESS;
AUDIT GRANT ANY ROLE BY ACCESS;
AUDIT ALTER PROFILE BY ACCESS;
AUDIT DROP PROFILE BY ACCESS;
Audit Vaultコンソールを起動するには、次のようにします。
ブラウザから、次のURLを入力します。
http://host:port/av
ここでは次のように指定します。
host
: Oracle Audit Vaultをインストールしたサーバー
port
: Audit VaultコンソールのHTTPポート番号
次に例を示します。
http://123.456.78.9:5700/av
URLが不明な場合は、Audit Vaultサーバーに使用するターミナル・ウィンドウから次のコマンドを入力して、Audit Vaultコンソールの起動に使用するURLを表示します。
avctl show_av_status
「ログイン」ページで、ユーザー名およびパスワードを入力します。「接続モード」リストから、「AV_AUDITOR
」を選択します。次に、「ログイン」をクリックします。
ホームページに、構成済のアラートおよび監査証跡アクティビティに関する情報が表示されます。このページでは、次の処理を行うことができます。
Audit Vault収集エージェントが機能していることの確認: これらのエージェントが監査データを収集していることを確認する方法は、1.5項を参照してください。
Oracle Databaseの監査ポリシーおよびアラートの作成: Oracle Database用のポリシーおよびアラートの作成方法は、第2章「Oracle Audit Vaultポリシーおよびアラートの作成」を参照してください。
監査レポートへのアクセス: OracleおよびMicrosoft SQL Serverのデータベースについて、収集された監査情報をAudit Vaultレポートに表示できます。必要に応じて、データ表示の制御およびユーザー定義レポートの作成が可能です。詳細は、第3章「Oracle Audit Vaultレポートの使用方法」を参照してください。
Oracle Audit Vault収集エージェントは、ソース・データベースとAudit Vaultサーバー間の接続を担当します。Audit Vaultコンソールでは、収集エージェントのステータスを確認できます。Oracle Databaseの監査ポリシーにアクセスできない場合や、Audit Vaultのデフォルト・レポートに情報がまったく表示されない場合は、収集エージェントが機能していないか、ソース・データベースが停止しています。
ソース・データベースの収集エージェントのステータスを確認するには、次のようにします。
AV_AUDITOR
ロールが付与されているユーザーとして、Audit Vaultコンソールにログインします。
Audit Vaultコンソールのログイン方法は、1.4項を参照してください。
「監査ステータス」タブをクリックします。
「監査ステータス」ページには、次の情報が表示されます。
コレクタ: コレクタの名前
エージェント: そのコレクタが関連付けられているエージェントの名前
監査ソース: 監査データが収集されている監査データ・ソースの名前
ステータス: コレクタが動作しているかどうかを示します。コレクタが動作している場合は、緑色の上向き矢印のインジケータが表示されます。コレクタが動作していない場合は、赤色の下向き矢印のインジケータが表示されます。問題がある場合は、エラーが表示されます。コレクタが機能していない場合は、Oracle Audit Vault管理者に連絡してください。
表1-1に、データベース・コレクタ・タイプをまとめます。
表1-1 Audit Vaultに用意されているデータベース・コレクタ・タイプ
データベース | コレクタ | 説明 |
---|---|---|
Oracle |
DBAUD |
次の処理を実行するコレクタです。
|
Oracle |
OSAUD |
次の処理を実行するコレクタです。
|
Oracle |
REDO |
Oracle Streamsテクノロジを使用してREDOログから論理変更レコードを取得するコレクタ。 |
SQL Server |
SQLSERVER |
Microsoft SQL ServerデータベースのWindowsイベント・ログ、サーバー側トレースおよびC2監査ログから、監査レコードを抽出する(Windowsプラットフォーム用の)コレクタ。 |