多層防御とゼロトラストとは?たそうぼうぎょ・ぜろとらすと
多層防御は、境界からデータまでの各層に破られ方の違う対策を置き、1つ抜かれても被害に届かせない考え方。ゼロトラストは「社内からの接続なら信用してよい」という前提を捨て、要求のたびに利用者・端末・文脈を確かめる考え方。DBでは接続制御・権限・行単位の制御・暗号化・監査が層にあたる。
最終更新:2026-10-06
データベースSPを最短で暗記・合格する →背景
アプリケーションが1つの強い権限でDBにつなぐ設計では、その経路が破られた時点で全表が読める。ネットワークを閉じても、アプリ経由のSQLインジェクションは正規の接続として通ってしまう。だから防御はDBの内側にも要る——読み取り専用ロール、行レベルセキュリティ、保存時の暗号化、監査ログという層である。
具体例
PostgreSQLでは接続元と認証方式をpg_hba.confで絞り、アプリ用ロールにはSELECTとINSERTだけをGRANTしてDDL権限を与えず、行レベルセキュリティ(RLS)で自分の担当行しか見えないようにする。Oracleでは同じ役割をVirtual Private Databaseが担う。
試験での引っ掛け
ゼロトラストが否定しているのは多層防御ではなく、境界の内側は信用してよいという前提のほうで、両者は併用する。多層防御も同じ対策を重ねることではなく、破られ方の異なる対策を別の層に置くのが本旨。DBでは、保存時に暗号化していても復号できる権限のまま読まれれば意味がないため、権限設計と組で考える。
関連用語
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。