3.4 Oracle SQL FirewallとOracle Database Vault

Database Vault環境でOracle SQL Firewallを使用するには、Oracle Database Vaultに特別な認可が必要です。

3.4.1 Oracle Database Vault環境でのSQLファイアウォールの使用

構成する保護のタイプに応じて、Oracle Database VaultとSQLファイアウォールのいずれかまたは両方を使用できます。

Database Vaultを使用すると、レルムおよびコマンド・ルールを使用して、信頼できない要素(時刻、IPアドレス、ホスト名、プログラム名あるいはユーザーに関連付けられている任意の数の識別可能な属性など)からの機密オブジェクトへのアクセス、クリティカル・コマンドの実行およびSQL接続をブロックできます。Database Vault環境では、SQLファイアウォールを使用して、データベース・アカウントの関連付けられた信頼できるデータベース接続パスを含むSQLコマンドの許可リストをキャプチャすることで、この保護を拡張できます。その後、未検出のSQLトラフィックをログに記録(および必要に応じてブロック)できます。SQLファイルウォールの強制では、承認されたSQL文および接続を、認可されていないSQLトラフィックと区別できます。これにより、レルムおよびコマンド・ルールが提供する保護レイヤーが強化され、明示的に認可されていないかぎり機密オブジェクトへのアクセスを防止します。

次の表に、Database Vaultレルムおよびコマンド・ルールとSQLファイアウォールを使用して保護を強制する方法の比較を示します。

表3-1 Oracle Database VaultとSQLファイアウォールの保護の比較

ユースケース レルム コマンド・ルール SQLファイアウォール

データベース・スキーマの保護

はい、従来のレルムまたは必須レルムでは、データへのアクセスを制限できます。

  • スキーマ全体(単数または複数)
  • オブジェクト・タイプ
  • 名前別の特定のオブジェクト

はい、スキーマ・オブジェクトに対するDML文またはDDL文

いいえ

データベース・ロールの保護

はい、従来のレルムまたは必須レルムでは、ロールを保護できます。

はい、特定のロールに対してGRANTまたはREVOKE文を使用してコマンド・ルールを作成します。

いいえ

データベース・オブジェクトの保護

はい、従来のレルムまたは必須レルムでは、データへのアクセスを制限できます。

  • スキーマ全体(単数または複数)
  • オブジェクト・タイプ
  • 名前別の特定のオブジェクト

はい、スキーマ・オブジェクトに対するDML文またはDDL文

  • スキーマ全体(単数または複数)
  • オブジェクト・タイプ
  • 名前別の特定のオブジェクト

いいえ

個々のSQL文の保護

いいえ

はい、スキーマまたは個々のスキーマ・オブジェクトに対する文を制御します。

はい、明示的に許可されたSQL文を除くすべてのSQL文をブロックします。

許可リストおよびアプリケーションSQLトラフィックの保護

いいえ

いいえ

はい、明示的に許可されたSQL文を除くすべてのSQL文をブロックします。

侵害されたアカウントのリスクからの保護

はい、プログラムでチェックできる要素に基づいて、信頼できるパス条件を確立します。

はい、CONNECTコマンドの使用を保護します。

はい、信頼できないクライアントIP、プログラムおよびOSユーザー名からのセッションをブロックします

SQLインジェクション・リスクからのデータベース・ユーザーの保護

いいえ

いいえ

はい、データベース・ユーザーごとに許可リストSQLファイアウォール・ポリシーを作成し、強制します。

3.4.2 Oracle Database Vault環境でSQLファイアウォールを使用するための認可

Oracle Database Vault環境では、SQLファイアウォールを構成するユーザーには、Oracle Database Vault固有の認可が必要です。

Database Vaultが有効な場合、SQLファイアウォールの管理(つまり、DBMS_SQL_FIREWALLパッケージの起動)には、SQLファイアウォール管理者がADMINISTER SQL FIREWALLシステム権限に加えてDatabase Vault固有の認可を受けている必要があります。この要件は、信頼できるユーザーのみがDatabase Vault環境でSQLファイアウォールを管理できるようにするためです。

SQLファイアウォール管理者には、Database Vault環境でDV_OWNERDV_ADMINまたはDV_ACCTMGRロールを持つユーザーに対するキャプチャを許可または許可しない権限を与えることができます。Database Vault操作制御が有効な場合、共通ユーザーが例外リストに含まれている場合を除き、共通ユーザーはローカル・ユーザーに対してSQLファイアウォール(つまり、キャプチャおよび許可リストを管理するためのDBMS_SQL_FIREWALLプロシージャ)の使用をブロックされます。