Audit Vault and Database Firewallでデータベースの監査ログを記録する②

[前回](https://qiita.com/Western24/items/5f858fcc5c0e95dec8da)は、ホストモニターによるパケットキャプチャの方法を紹介しました。今回は、エージェントを使用してデータベースの監査ログを収集する方式と最近リリースされたホストモニターによるローカル接続のログ収集機能の設定手順を説明します。


## エージェントによるデータベース監査ログの収集
Audit Vault Agentのインストールは前回の設定で済んでいるので、コンソールでの設定から。

- AVADMINコンソールからターゲット -> ターゲット(BaseDB)の詳細を表示。修正をクリックし、監査表にアクセスする情報を確認する
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/9c4e852c-2624-47de-b135-9e3a7e41c5f7.png)

- この設定は、エージェントがBaseDBの監査表にアクセスする際のユーザーと接続情報として使用される。つまり、SYSTEMユーザーでPDBの監査表にアクセスするという意味。テスト接続が成功することを確認して保存
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/ace43715-204c-4d9c-82c3-b45986c3ab03.png)

- 監査データの収集の追加をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/b4f9e5e0-7ab2-439c-a5fb-3753954caa6a.png)

- 監査証跡のタイプをTABLE、Agent-based Collectionをチェックして、エージェントはBaseDBのエージェント、証跡の場所はUNIFIED_AUDIT_TRAILビューを指定して保存
<font color='teal '> ※ここでAgentless Collectionを指定すれば、エージェントをDatabaseにインストールせずに、直接Audit Vault側からデータベースの監査表にアクセスする方式にすることが可能</font>
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/662006bb-7e54-4ff6-9831-bda35a40b636.png)

- ステータスがアイドルになっていればOK
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/8ef2084c-2c37-4b67-8b57-9483438e230e.png)

- AVAUDITORのコンソールからレポート -> All Activityから場所をAudit Tableでフィルタして検索。すでに監査表(Unified_Audit_Trail)から収集開始されているので監査レコードが確認できる。※DDLはデフォルト監査ポリシーの対象になっているので、CREATE USERやCREATE TABLEなどのSQLを実行すればUnified Auditに記録されて確認できる
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/cc448e66-969c-4c9e-8738-57a7c68bc78b.png)

Oracle Databaesの監査機能(Unified Audit)については、[こちら](https://qiita.com/Western24/items/2e2764a34a3cfe7d80ce)を参考にして下さい。

## ホストモニターによるローカル接続のキャプチャ (AVDF 20.13～)
AVDF 20.13からは、データベースサーバー上でループバックやBequeathを介したデータベースへのローカル接続がキャプチャ可能になりました。これは、sqlplus / as sysdbaようなリスナーを経由しない直接データベース・サーバー上での操作されるアクセスについても記録可能です。
従来ローカル接続は、ネットワークキャプチャ方式では取得できなかったので、データベースの監査機能とエージェントで補完していたのですが、ホストモニターでリモートもローカルもキャプチャ可能になりました。では、実際にこの設定を追加してみます。


- 監査データの収集から追加をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/b4f9e5e0-7ab2-439c-a5fb-3753954caa6a.png)

- 監査証跡のタイプをNETWORK、証跡の場所をLOCAL/lo(Loopback)で作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/1d77a2b2-278a-4131-ba8b-b03a946fd248.png)

- 監査証跡のタイプをNETWORK、証跡の場所をLOCAL/bequeathで作成
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/53aac149-e246-4c06-a3e9-85d937294b9d.png)

- それぞれ収集中になっていればOK
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/eaccf7f5-c173-4076-9d3a-d43db0fadcc4.png)

BaseDBにログインし、BequeathとLoopbackそれぞれの接続でSQLを実行しキャプチャされるかを確認する
```
//Bequeath接続
$ sqlplus / as sysdba
SQL> select * from bequeath;
select * from bequeath
              *
ERROR at line 1:
ORA-00942: table or view does not exist

//Loopback接続
$ sqlplus system/password@ip_address:port/service_name
SQL> select * from loopback;
select * from loopback
              *
ERROR at line 1:
ORA-00942: table or view does not exist
```
- AVAUDITORのレポートでログが確認できればOK
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/562423/346ce0c6-192c-4091-8fcf-02d7cfca292f.png)

以上、AVDFをOCIで動作させる方法を紹介しました。
OCIの場合は、マーケットプレイスから簡単にデプロイできるので、従来の対応するハードウェアにAVDFのメディアからインストールする手順がなく、とても簡単に構築・検証することができます。
また、BaseDBやExaDB-DといったOCIのデータベース監査には、AVDF以外にもData SafeやLogging Analyticsなど他のサービスも利用することができるので合わせて検討されると良いかと思います。
AVDFのOCI利用の場合、OCIではコンピュートに対する課金だけですが、別途AVDFのライセンスが必要になりますので、本番利用についてはOracle営業にご相談下さい。