>>> Logstorage対応機能 「Logstorage SBT for Oracle」

個別ログ活用例 -Oracle Database ログの活用-

Oracle Databaseの何のログを取るべきか

 企業にとって重要なデータの多くはデータベースに保管されており、ログ・モニタリングの対象として、優先度が高い事は言うまでもありません。
 しかし、データベースに保管されるデータの種類やアクセスの経路は様々である為、適切なモニタリングを行う為にはまず、「何を目的としてデータベースログを収集・管理するか」を明確にする必要があります。



 Oracle Databaseの何のログを取るべきかについて、「何を目的とするか」によって異なってきますが、システムの監査を目的とするなら監査設定を有効にした上で上図の右側、データベースサーバに対する管理上のアクセスログを取得対象とし、意図しないデータや設定の改ざん・更新が行われていないかを、継続的にモニタリングする事が求められます。
 逆にアプリケーションサーバ等からのアクセスについては、基本的に固定的なSQL文のみが発行される形となる為、その取得の優先度は低いと考えられます。
 但し、アプリケーションサーバが外部公開されているケースに於いて、外部からの攻撃に対するモニタリングを強化しようとする場合、上図のアプケーションサーバからDBサーバへのアクセスログを取得するケースも有ります。

Oracle Databaseの監査ログの内容

 Oracle Databaseから監査ログを取得する場合、「AUDIT_TRAIL」の設定を行います。
 (AUDIT_TRAILの詳細については、Oracle Databaseのマニュアルをご覧下さい)
 「AUDIT_TRAIL」には下記5つの設定があり(Oracle 10g R2以降)、それぞれログの出力のされ方や、出力項目が異なります。
  • OS
  • XML
  • XML, extended
  • DB
  • DB, extended
 上記のうち、「DB」「DB, extended」は文字通りOracle Database上(SYS.AUD$表)にログを記録するもので、Oracle Database のパフォーマンス低下が生じやすく、推奨されません。
 それに対し、「OS」「XML」「XML, extended」はテキストログや、Windowsの場合はイベントログに出力されるため、相対的にOracle Databaseのパフォーマンス低下が生じにくいとされており、Logstorage で Oracle Database の監査ログを取得する際は、こちらを指定します。

ログ出力項目

 下表が「OS」「XML」「XML,extended」毎のログの出力項目です。

Oracle監査ログ

項目 AUDIT_TRAIL設定
OS XML XML,extended
誰が DBユーザ名/OSユーザ名
いつ タイムスタンプ
どこで ホスト名/IPアドレス
何を アクセス対象のオブジェクト名
どうやって アクション
SQL × ×
どうなった アクションの成功/失敗

Oracle監査ログの項目 (Oracle 10g R2以降)

項目名 記録される内容
Session_Id セッションID
StatementId ユーザーが実行するSQL文に割り当てられるID
EntryId セッションの各監査証跡エントリの数値ID
Extended_Timestamp タイムスタンプ(UTC,協定世界時)
DB_User DBユーザ名
OS_User OSユーザ名
Userhost クライアントのホスト名
OS_Process Oracleプロセスのオペレーティング・システムのプロセス識別子
Terminal ユーザの端末の識別子
Instance_Number インスタンス番号
Action ユーザが実行したアクション
TransactionId オブジェクトがアクセスまたは変更された際のトランザクションID
Returncode アクションの成功/失敗
Comment_Text 監査レコードのコメント(認証時などは、認証方式などが出力される)
Priv_Used 操作の実行に使用されたシステム権限
Sql_Bind バインド変数 (XML,extended 指定時のみ)
Sql_Text SQL文 (XML,extended 指定時のみ)

LogstorageによるOracle Database監査ログの取得・管理



 Logstorageが直接、Oracle Database から監査ログを収集する場合、Logstorage SBTプログラムを Oracle Database サーバに導入します。
 Logstorage SBTはOracleの監査ログをLogstorageに自動転送するプログラムで、WindowsタスクやUNIXのcronに設定して1時間〜1日毎に実行させます。常駐型のエージェントではありませんので、Oracle Databaseサーバに与える負荷は殆どありません。

Logstorageで Oracle Database監査ログを管理する事により、下記のような効果があります。

Point.1 ログの長期・高圧縮保存

 Logstorageに保管されるログは最大で10分の1まで圧縮されますので、ログ保管に必要なストレージコストを大幅にカットし、長期間の保管も可能になります。

Point.2 ログの安全保管・改ざん検出

 Logstorageに保管されるログは暗号化され、更に電子署名の付与による改ざん検出が可能になります。

Point.3 コード変換等によるログの可視化

 Oracle Database の監査ログ上でユーザの行動を示す「アクション」は、ログ上は「100」「101」などのようにコードで出力されています。Logstorageはこれを取り込む際、人間がそのまま読んで理解出来る形式に変換しますので、ログの可読性が飛躍的に向上します。

 例)アクション
  「100」⇒「LOGON」
  「101」⇒「LOGOFF」

Point.4 Oracle Database以外のログとの横串・横断的な検索・追跡

 Logstorageはインフォサイエンスの特許取得技術により、異なるフォーマットを持つログの違いを吸収し、ログを統合的・横断的に分析する事が可能です。 例えばOracle Databaseの監査ログと入退室管理システム、複合機等の物理デバイスのログやPC端末の操作ログなどを統合し、フロアへの出入り、サーバー上での操作、紙の印刷など、ITシステム上での全てのアクティビティを、ログから時系列で追跡・分析する事が可能になります。

>>関連情報

Point.5 自由度の高いレポート出力

 Logstorageのレポート機能の直感的なGUI画面より、お客様自身で様々な角度からログレポートを作成する事が可能です。
 また、レポートは日次・月次などのタイミングで定期的・自動的に出力できる他、作成したレポートをメールに添付して自動送信する機能がありますので、Oracle Database監査ログのモニタリングに掛かる負荷を大幅に軽減します。

画面例

検索結果画面例

(クリックして拡大)

標準集計画面例

(クリックして拡大)

対応製品

  • Oracle Database 10g R2
  • Oracle Database 11g
  • Oracle Database 11g R2
  • Oracle Database 12c R1
  • Oracle Database 12c R2
  • Oracle Database 18c
  • Oracle Database 19c
※AUDIT_TRAIL設定は「XML」「XML, extended」のいずれかをお客様に設定いただきます。

データベース監査ログ取得ツールとの連携

 Logstorageは、多くのデータベース監査ログ取得ツールとも連携しています。
 Logstorageで直接監査ログを取得するのではなく、これらのツールを併用する事により、様々な種類のデータベース(Oracle, SQL Server, Sybase, MySQL その他)の監査ログの取得・設定が容易になる他、ツールの方式によっては、データベースサーバに対する影響を極めて小さくしてログを収集する事が可能になります。
 また、ログの記録だけでなく、アクセス制御まで行うツールもあります。

 各製品の詳細については、下記製品名のリンク先のページより、各メーカー様・販売店様にお問合せ下さい。

製品名 メーカー・販売店
SSDB監査 株式会社システムエグゼ
PISO 株式会社インサイトテクノロジー