データベース運用・管理

データベースセキュリティ でーたべーすせきゅりてぃ

DBセキュリティアクセス制御暗号化SQLインジェクション権限管理監査
DBセキュリティって何を守る必要があるの?

簡単に言うとこんな感じ!

DBセキュリティは「大事なデータが盗まれない・改ざんされない・壊れない」ようにする対策全般だよ!個人情報・顧客データ・財務データが入っているDBは企業の「宝の箱」で、それを守るための鍵の管理・番人の配置・記録の保管が必要なんだ。


データベースセキュリティとは

データベースセキュリティ(Database Security) とは、データベースに保存されたデータを不正アクセス・漏洩・改ざん・破壊から保護するための技術的・組織的対策の総称です。

情報漏洩の多くはDBへの直接攻撃やアプリケーション経由(SQLインジェクション)によるものです。DB自体のセキュリティ設定が不十分だと、侵入後にすべてのデータが持ち出されるリスクがあります。


データベースセキュリティの主な対策

対策内容
最小権限の原則アプリには必要最小限の権限のみ付与(SELECT権限のみ等)
暗号化(保存時)Transparent Data Encryption(TDE)でストレージを暗号化
暗号化(通信時)SSL/TLS接続の強制
SQLインジェクション対策プリペアドステートメント・ORMの使用
アクセスログ・監査誰がいつ何にアクセスしたかを記録
ネットワーク分離DBをプライベートネットワークに配置し直接アクセス不可にする
パスワード管理デフォルトパスワードの変更・定期的なローテーション
パッチ適用DBエンジンの脆弱性修正を定期的に適用

SQLインジェクションとは

ユーザー入力に悪意のあるSQL文を混入させ、DBを不正操作する攻撃。

-- 悪意ある入力例: id = "1 OR 1=1"
SELECT * FROM users WHERE id = 1 OR 1=1;
-- → 全ユーザーのデータが漏洩

対策: パラメータ化クエリ(プリペアドステートメント)でSQL文と入力値を分離。


歴史と背景

  • 2002年:OWASPが「SQL Injection」をWebアプリの重大脆弱性として定義
  • 2011年:PlayStationNetworkへの大規模攻撃(7700万件漏洩)でDBセキュリティが注目
  • 個人情報保護法改正(2022年):漏洩時の報告義務が強化されDBセキュリティへの投資が増加

関連用語