ヘッダーをスキップ

Oracle® Database Firewall管理ガイド リリース5.1 B66170-01 |
| 目次 | 索引

前 | 次 |

# 7 ローカル・モニタリングの構成および使用

この章の内容は、次のとおりです。

- ローカル・モニタリングの概要

- ローカル・モニタリングのインストール

- ローカル・モニタリングの有効化

- ローカル・モニタリングの無効化

## ローカル・モニタリングの概要

ローカル・モニタリング・ソフトウェアを使用すると、コンソール・ユーザーや、データベース・サーバーで実行されるバッチ・ジョブなど、データベースに直接アクセスするソースから発生したSQLトラフィックを強制ポイントで監視できます(ただし、ブロックできません)。ローカル・モニタリングでは、トラフィックをネットワーク経由で送信しません。Oracle Database Firewallのローカル・モニタリング・ソフトウェアを監視対象データベースに直接インストールします。ローカル・モニタリングでは、データベースの追加の表を使用して次の内容を記録します。

- コンソール・ユーザーまたは他のプロセスによってデータベースに送信された最後の文。

- データベース内のデータに影響を与えるコンソール・ユーザーまたはプロセスが作成した、`ALTER TABLE`や`DROP TABLE`操作などのすべての文。トリガー(OracleおよびSybase)やイベント通知(Microsoft SQL Server)などのメカニズムによって、それらの文は記録されます。

強制ポイントでは、一定の間隔でデータベースを問い合せることでデータを収集し、そのデータをデータベース・クライアントで作成された文と同じ方法で使用します。ポリシーの設計に応じて、各文はログに記録されたり警告を発行しますが、ローカル・モニタリングはトラフィックとデータベース間のインラインではないため、文をブロックすることはできません。ローカル・モニターでログに記録されたトラフィックでは、そのソースIPアドレスに0.0.0.0が指定されます。

Oracle Database Firewallでは、Oracle、SQL ServerおよびSybase ASEの各データベースに対するローカル・モニタリングをサポートしています。サポート対象のデータベース製品の完全なリストについては、『Oracle Database Firewallインストレーション・ガイド』を参照してください。

次のガイドラインに留意してください。

- Microsoft SQL Server 2005以降のデータベースを使用する場合は、データベースで混合モード認証が使用されていることを確認します。

- ローカル・モニタリングでは、コンソール・ユーザーまたは他のプロセスから作成された文のソースIPアドレスに0.0.0.0とポート0が使用されます。宛先アドレス(トラフィック・ログに表示)は、監視する保護対象データベースのいずれかと同じアドレスです。

- ローカル・モニタリングでは、重複したSQL文は記録されません。重複した一連のSQL文では最後のSQL文のみが記録されます。

- ローカル監視では、セッションがローカル・マシンからのものであるかを判断するために、正引きおよび逆引きのDNS参照を両方とも実行します。DNS構成が破損しているためにサーバーから正常に参照できない場合、ローカル監視ではコンソール・イベントは記録できません。ローカル監視ですべてのローカル・セッションを記録するには、DNS構成が正しいことを確認してください。

## ローカル・モニタリングのインストール

この項の内容は、次のとおりです。

- ローカル・モニタリングのインストールに必要なスクリプトへのアクセス

- ローカル・モニタリング用に作成されるデータベース・アカウント

- Oracleデータベースへのローカル・モニタリングのインストール

- Microsoft SQL Serverデータベースへのローカル・モニタリングのインストール

- Sybase ASEデータベースへのローカル・モニタリングのインストール

### ローカル・モニタリングのインストールに必要なスクリプトへのアクセス

保護対象データベースにローカル・モニタリング・コンポーネントをインストールするために使用するスクリプトは、`Oracle Database Firewall Utilities 5.1`ディスクの`database\localmonitor`フォルダにあります。Oracle、SybaseおよびMicrosoft SQLの各データベース用に個別のスクリプトが用意されています。

データベースがWindowsプラットフォーム上にある場合は、`.zip`アーカイブ・ファイルからスクリプトを取得します。Linuxプラットフォームを使用している場合は、次のように`.tar`アーカイブ・ファイルを解凍できます。

    mkdir localmonitoring
    cd localmonitoring
    tar -xvf oracle.tar

### ローカル・モニタリング用に作成されるデータベース・アカウント

インストール・プロセスによって、次の2つのデータベース・アカウントと必要な権限が自動的に作成されます。

- `DBFW_CONSOLE_ACCESS`は、スキーマ・オブジェクトを所有します。

- `DBFW_CONSOLE_ACCESS_QRY`は、データベースを問い合せるためにOracle Database Firewallで使用します。

`DBFW_CONSOLE_ACCESS`アカウントには、次の権限があります。

- `CREATE SESSION`

- `ADMINISTER DATABASE TRIGGER`

- `CREATE PROCEDURE`

- `CREATE SEQUENCE`

- `CREATE TABLE`

- `CREATE TRIGGER`

`DBFW_CONSOLE_ACCESS_QRY`アカウントには、次の権限があります。

- `CREATE SESSION`

### Oracleデータベースへのローカル・モニタリングのインストール

Oracleデータベースにローカル・モニタリング・コンポーネントをインストールする手順は、次のとおりです。

1. Oracle Database Firewall製品のCD (`Oracle Database Firewall Utilities 5.1`)から、スクリプトを実行するサーバーに`database`ディレクトリをコピーします。

2. このサーバーで、`database/localmonitor`ディレクトリに移動し、`oracle`圧縮ファイルを`oracle`というディレクトリ(推奨)に解凍します。

3. `oracle`ディレクトリに移動して解凍したファイルを確認し、これらのスクリプトのユーザーに付与される権限を理解します。

4. ユーザーの作成およびユーザー権限の設定を行う権限が付与されているユーザーとして、Oracle Databaseにログインします。

   次に例を示します。

       sqlplus sys/as sysdba
       Enter password: password
       Connected.
       SQL>

   Oracle Database Vaultとともに使用するデータベースの場合は、`DV_ACCTMGR`ロールが付与されたユーザーとしてログインします。

5. `dcam_new_user`という名前のスクリプトを実行して、`DBFW_CONSOLE_ACCESS`アカウントを作成します。

   次に例を示します。

       SQL> @dcam_new_user password1 for DBFW_CONSOLE_ACCESS password2

   `password`1には、`DBFW_CONSOLE_ACCESS`アカウントのパスワードを入力します。

   `password`2には、DBFW_CONSOLE_ACCESS_QRY表のパスワードを入力します。

   ここでパスワードを省略すると、実行時にパスワードの入力が求められます。このスクリプトではセキュリティの強化のためにパスワードの入力が求められます。

6. `DBFW_CONSOLE_ACCESS`アカウントとして`dcam_setup`という名前のスクリプトを実行します。

       connect DBFW_CONSOLE_ACCESS
       Enter passowrd: password1
       SQL> @dcam_setup.sql

   このスクリプトでは、モニタリング・システムで使用する表とトリガーが作成され、DBFW_CONSOLE_ACCESS_QRY表に対するアクセス権が付与されます。

   管理コンソールからローカル・モニタリングを有効にするユーザーに、`DBFW_CONSOLE_ACCESS_QRY`表のパスワードを提供します。

7. (オプション)前述の権限、表、トリガーを削除する必要がある場合には、```cam_drop`スクリプトを実行します。

       connect DBFW_CONSOLE_ACCESS
       Enter passowrd: password1
       SQL> @dcam_drop.sql

8. (オプション) `DBFW_CONSOLE_ACCESS`アカウントを無効にし、DBFW_CONSOLE_ACCESS_QRY表へのアクセスを削除する必要がある場合には、`dcam_remove_user`スクリプトを実行します。

       SQL> @dcam_remove_user.sql

### Microsoft SQL Serverデータベースへのローカル・モニタリングのインストール

混合モードの認証を実行中のMicrosoft SQL Serverデータベースにローカル・モニタリング・コンポーネントをインストールする手順は、次のとおりです。

1. Oracle Database Firewall製品のCD (`Oracle Database Firewall Utilities 5.1`)から、スクリプトを実行するサーバーに`database`ディレクトリをコピーします。

2. このサーバーで、`database/localmonitor`ディレクトリに移動し、`sqlserver`圧縮ファイルを`sqlserver`というディレクトリ(推奨)に解凍します。

3. `sqlserver`ディレクトリに移動して解凍したファイルを確認し、これらのスクリプトのユーザーに付与される権限を理解します。

4. ユーザーの作成およびユーザー権限の設定を行う権限が付与されているユーザーとして、SQL Serverにログインします。

       sqlcmd -S server_name -U sa -P password

5. `dcam_new_user`という名前のスクリプトを実行して、アカウントを作成します。

       1> :r dcam_new_user.sql

   このスクリプトでは、`DBFW_CONSOLE_ACCESS`および`DBFW_CONSOLE_ACCESS_QRY`アカウントならびにデフォルトのパスワードが作成されます。

6. この2つのアカウントのパスワードを変更します。

       1> alter login DBFW_CONSOLE_ACCESS with password = 'new password';
       2> go
       1> alter login DBFW_CONSOLE_ACCESS_QRY with password = 'new password';
       2> go

7. `dcam_setup.sql`という名前のスクリプトを実行します。

       1> :r dcam_setup.sql

   このスクリプトでは、モニタリング・システムで使用する表とイベント通知フレームワークが作成され、`DBFW_CONSOLE_ACCESS_QRY`表に対するアクセス権が付与されます。

   管理コンソールからローカル・モニタリングを有効にするユーザーに、`DBFW_CONSOLE_ACCESS_QRY`アカウントのパスワードを提供します。

8. (オプション) ステップ5で作成したユーザー・アカウントを削除する場合には、`dcam_remove_user`スクリプトを実行します。

       1> :r dcam_remove_user.sql

9. (オプション) ステップ7で作成した表と通知を削除する場合には、`dcam_drop`スクリプトを実行します。

       1> :r dcam_drop.sql

### Sybase ASEデータベースへのローカル・モニタリングのインストール

Sybase ASEデータベース(Sybase SQL Anywhereデータベースはサポート対象外)にローカル・モニタリング・コンポーネントをインストールする手順は、次のとおりです。

1. Oracle Database Firewall製品のCD (`Oracle Database Firewall Utilities 5.1`)から、スクリプトを実行するサーバーに`database`ディレクトリをコピーします。

2. このサーバーで、`database/localmonitor`ディレクトリに移動し、`sybase`圧縮ファイルを`sybase`というディレクトリ(推奨)に解凍します。

3. `sybase`ディレクトリに移動して解凍したファイルを確認し、これらのスクリプトのユーザーに付与される権限を理解します。

4. 管理権限およびユーザーを作成する権限が付与されているユーザーとして、Sybase ASEデータベースに対して`dcam_sa_setup`スクリプトを実行します。

       isql -S server_name -U sa -i dcam_sa_setup.sql

   このスクリプトでは、`dbfw_console_access_qry`アカウントとデフォルトのパスワードが作成されます。

5. `dbfw_console_access_qry`アカウントのパスワードを変更します。

       isql -S server_name -U sa
       1> sp_password "sa password", new password, dbfw_console_access_qry
       2> go

   `dbfw_console_access_qry`アカウント名を小文字で入力します。このアカウント名は、大文字と小文字が区別されます。

6. Sybase ASEデータベースに対して次のスクリプトを実行します。

       isql -S server_name -U dbfw_console_access_qry -i dcam_setup.sql
       isql -S server_name -U sa -i dcam_sa_setup_global_trigger.sql

   このスクリプトでは、モニタリング・システムで使用する表とグローバル・トリガーが作成され、表に対するアクセス権が`dbfw_console_access_qry`アカウントに付与されます。

7. 管理コンソールからローカル・モニタリングを有効にするユーザーに、手順5で作成した`dbfw_console_access_qry`アカウントのパスワードを提供します。

8. Sybase ASEを再起動します。

9. (オプション) この手順で追加した権限と表を削除する場合には、`dcam_drop`スクリプトを実行し、Sybase ASEを再起動します。

## ローカル・モニタリングの有効化

SQLデータベースのローカル・モニタリングを有効にする手順は、次のとおりです。

1. Management Server管理コンソールにログインします。

   詳細は、「管理コンソールへのログイン」を参照してください。

2. 「Monitoring」タブをクリックします。

3. 該当する強制ポイントの「Settings」ボタンをクリックします。

4. 「Monitoring Settings」ページで、「Activate Local Monitor」を選択します。

   「Activate Local Monitor」領域が次のように展開されます。

   図activate_loc_mon.gifの説明

5. 次の設定を指定します。

   - 「Database Address」、「Port」、「Database Name」: データベース名、データベース・マシンのIPアドレスまたは名前、およびポート番号を指定します。ドメイン・ネーム・サーバー(DNS)を使用している場合は、IPアドレスのかわりに、ホスト名を入力できます。

   - Password、Password Confirmation: 保護対象データベースでのソフトウェアのインストール時に指定された`DBFW_CONSOLE_ACCESS_QRY`アカウントのパスワード。

6. 「Save」をクリックします。

ローカル・モニタリングをテストするには、データベース・サーバーで適切な問合せを実行し、Oracle Database Firewallでその問合せがログに記録されていることを確認します。

## ローカル・モニタリングの無効化

ローカル・モニタリングを無効にできます。ローカル・モニタリングを完全に削除する場合は、『Oracle Database Firewallインストレーション・ガイド』を参照してください。

ローカル・モニタリングを無効にする手順は、次のとおりです。

1. Management Server管理コンソールにログインします。

   詳細は、「管理コンソールへのログイン」を参照してください。

2. 「Monitoring」タブを選択します。

   デフォルトでは、「Enforcement Points」ページが表示されます。表示されない場合は、ページの左側の「Enforcement Points」メニューで「List」ボタンをクリックします。

3. ローカル・モニタリングを無効にする強制ポイントを検索します。

4. 「Settings」ボタンをクリックします。

   「Monitoring Settings」ページが表示されます。

5. 「Local Monitoring」領域で、「Activate Local Monitoring」チェック・ボックスの選択を解除します。

6. 「Monitoring Settings」ページの下部までスクロールして、「Save」ボタンをクリックします。

7. UIでこの手順を完了してから、`dcam_drop`スクリプトを実行する必要があります。データベース・タイプ別の例については、この章で該当するデータベースの項を参照してください。この手順を実行しない場合、データベースが最終的な領域不足になります。