【データベースかんさ】

データベース監査 とは?

💡 データベースの「防犯カメラ」——誰が何をしたか、全部お見通し。
📌 このページのポイント
データベース監査の仕組み データベース DB操作 ユーザー SELECT / UPDATE 監査エンジン ネイティブ / トリガー 監査ログ 2024-01-15 09:12 user: admin op: UPDATE users rows: 5 2024-01-15 09:20 user: bob / SELECT 🔒 署名で改ざん防止 コンプライアンス対応 PCI DSS / HIPAA / 金融規制
データベース監査のイメージ:操作をすべて記録して追跡可能にする
ひよこ ひよこ

データベース監査って、DBの使い方を見張る仕組みなの?

ペンギン先生 ペンギン先生

そうだよ。誰がいつどのテーブルにアクセスして、何を変更したかをログに残す仕組みだね。

ひよこ ひよこ

なんでそんな記録が必要なの?

ペンギン先生 ペンギン先生

不正アクセスの検知や、情報漏えい時の原因調査に使うんだよ。金融や医療では法律で義務付けられていることもあるんだ。

ひよこ ひよこ

記録する方法は1つじゃないの?

ペンギン先生 ペンギン先生

主に2種類あるよ。PostgreSQLOracleが持つ「ネイティブ監査機能」と、テーブルトリガーを仕掛けて変更を別テーブルに書き出す「トリガーベース監査」だね。

ひよこ ひよこ

どっちが良いの?

ペンギン先生 ペンギン先生

ネイティブ監査はDBエンジン自体が記録するから漏れが少なくてパフォーマンスも安定してるよ。トリガーベースはアプリ側で柔軟にカスタマイズできるけど、トリガーを回避されると記録できない弱点があるんだ。

ひよこ ひよこ

監査ログ自体が改ざんされたらどうするの?

ペンギン先生 ペンギン先生

大事な視点だね!ログを書き込み専用のストレージに送ったり、ハッシュ署名を付けたりして改ざん検知できるようにするのが一般的だよ。監査ログの信頼性が命なんだ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
データベース監査」って出てきたら「DB操作を全部記録して追跡できる仕組み」と思えればだいたいOK!
📖 おまけ:英語の意味
「Database Audit」 = データベース監査
💬 Audit(監査)は会計・行政用語が起源で、記録を精査して正確さを確かめる行為を指すよ。DBの文脈では操作ログの収集と追跡を意味するんだ。
← 用語集にもどる