11 Oracle Database Vaultとその他のOracle製品の統合
Oracle Database Vaultは、Oracle Data Guardなどの他のOracle製品と統合できます。
- Oracle Database Vaultと透過的データ暗号化の統合
データがデータベースのセキュアな範囲外にある場合のデータ保護を提供するという意味で、透過的データ暗号化はOracle Database Vaultを補完するものです。 - Oracle Virtual Private Databaseへのファクタの追加
Oracle Virtual Private DatabaseにはOracle Database Vaultのファクタを追加できます。 - Oracle Database VaultとOracle Label Securityの統合
Oracle Database VaultとOracle Label Securityを統合すると、レポートおよびデータ・ディクショナリ・ビューとの統合を確認できます。 - Oracle Database VaultとOracle Data Guardの統合
Oracle Database VaultとOracle Data Guardの統合では、まずプライマリ・データベースを構成し、次にスタンバイ・データベースを構成します。 - Oracle Database Configuration Assistantを使用したOracle Internet Directoryの構成
Oracle Database Vault対応データベースでOracle Internet Directoryを使用できます。 - Oracle Database Vaultとエンタープライズ・ユーザー・セキュリティの統合について
Oracle Database Vaultは、Oracle Enterprise User Securityと統合できます。 - Oracle Database VaultとOracle APEXの統合
Oracle Database Vaultは、Oracle APEXと統合できます。
11.1 Oracle Database Vaultと透過的データ暗号化の統合
データがデータベースのセキュアな範囲外にある場合のデータ保護を提供するという意味で、透過的データ暗号化はOracle Database Vaultを補完するものです。
透過的データ暗号化を使用して、データベース管理者またはデータベース・セキュリティ管理者は、アプリケーション表の機密情報の列のみを暗号化したり、アプリケーション表領域全体を暗号化したりできます。アプリケーションを変更する必要はありません。
ユーザーが認証チェックと認可チェックを通ると、透過的データ暗号化によりユーザーの情報は自動的に暗号化および復号化されます。このように、アプリケーションを変更しなくても暗号化を実装できます。
透過的データ暗号化ユーザーに適切な権限を付与したら、透過的データ暗号化を通常どおり管理でき、Database Vaultを補完するものとして使用できます。
図11-1に、暗号化されたデータがOracle Database Vaultレルムでどのように処理されるかを示します。
11.2 Oracle Virtual Private Databaseへのファクタの追加
Oracle Virtual Private DatabaseにはOracle Database Vaultのファクタを追加できます。
- PL/SQLファンクションまたはPL/SQL式であるVirtual Private Databaseポリシー述語を定義します。
- 各ファンクションまたは式に対して、ファクタごとに作成されるPL/SQLファンクション
DVF.F$
を使用します。
11.3 Oracle Database VaultとOracle Label Securityの統合
Oracle Database VaultとOracle Label Securityを統合すると、レポートおよびデータ・ディクショナリ・ビューとの統合を確認できます。
- Oracle Database VaultとOracle Label Securityの統合方法
Oracle Database VaultとOracle Label Securityの統合により、OLSラベルをDatabase Vaultファクタ・アイデンティティに割当てできます。 - Oracle Database VaultをOracle Label Securityとともに使用するための要件
Oracle Database VaultとOracle Label Securityを使用する前に、特定の要件を満たす必要があります。 - Oracle Label SecurityポリシーでのOracle Database Vaultファクタの使用
セキュリティを強化するには、Oracle Database VaultのファクタとOracle Label Securityポリシーを統合します。 - チュートリアル: Oracle Database VaultとOracle Label Securityの統合
Oracle Database VaultとOracle Label Securityの統合により、同じ権限を持つ2人の管理ユーザーに異なるレベルのアクセス権を付与できます。 - 関連するレポートおよびデータ・ディクショナリ・ビュー
Oracle Database Vaultには、Oracle Database VaultとOracle Label Securityの統合に関する情報が示されるレポートおよびデータ・ディクショナリ・ビューが用意されています。
11.3.1 Oracle Database VaultとOracle Label Securityの統合方法
Oracle Database VaultとOracle Label Securityの統合により、OLSラベルをDatabase Vaultファクタ・アイデンティティに割当てできます。
Oracle Label Securityでは、データベース表またはPL/SQLプログラムのレコードへのアクセスを制限できます。たとえば、アクセスを特定の管理者に限定する必要があるレコードを含むEMPLOYEE
表の、HIGHLY SENSITIVE
ラベル(Oracle Label Securityラベル)で保護されたデータをMaryは参照できます。もう1つのラベルを、このデータへのよりオープンなアクセスを許可するPUBLIC
にできます。
Oracle Database Vaultでは、データベース・セッションが発生するネットワーク用に、次のアイデンティティを指定してNetwork
というファクタを作成できます。
-
Intranet: 従業員が会社のイントラネット内の場所で作業している場合に使用します。
-
Remote: 従業員がVPN接続から在宅で作業している場合に使用します。
次に、両方のアイデンティティに最大のセッション・ラベルを割り当てます。たとえば:
-
IntranetアイデンティティをOracle Label Securityラベルの
HIGHLY SENSITIVE
に割り当てます。 -
Remoteアイデンティティを
PUBLIC
ラベルに割り当てます。
つまり、MaryがVPN接続を使用して在宅で作業している場合は、PUBLIC
アイデンティティで保護される、限定された表データにのみアクセスできます。しかし、職場にいる場合は、Intranetアイデンティティを使用しているため、HIGHLY SENSITIVE
データにアクセスできます。
Label Security統合の監査レポートを使用すると、Oracle Label Securityとの統合を監視できます。この情報を取得する監査ポリシーを作成できます。現在のOracle Databaseリリース23cでは、従来の監査はサポート対象外です。
11.3.2 Oracle Database VaultをOracle Label Securityとともに使用するための要件
Oracle Database VaultとOracle Label Securityを使用する前に、特定の要件を満たす必要があります。
-
Oracle Label Securityは別個にライセンス許可されます。それを使用するためのライセンスを購入済であることを確認してください。
-
Oracle Database Vaultをインストールする前に、Oracle Label Securityのインストールを済ませておく必要があります。
-
Oracle Label Securityのインストール・プロセスで
LBACSYS
ユーザー・アカウントが作成されます。DV_ACCTMGR
ロールを付与されているユーザーとして、このアカウントをロック解除し、新しいパスワードを付与します。たとえば:sqlplus accts_admin_ace@pdb_name Enter password: password ALTER USER LBACSYS ACCOUNT UNLOCK IDENTIFIED BY password;
-
Oracle Enterprise Managerで
LBACSYS
ユーザー・アカウントを使用する場合、SYSDBA
管理権限を持つユーザーSYS
としてEnterprise Managerにログインし、このユーザーにSELECT ANY DICTIONARY
およびSELECT_CATALOG_ROLE
システム権限を付与します。 -
適切なOracle Label Securityポリシーが定義されていることを確認してください。
-
Oracle Label SecurityポリシーをDatabase Vaultポリシーと統合する場合、Oracle Label Securityのポリシー名が24文字未満であることを確認します。
ALL_SA_POLICIES
データ・ディクショナリ・ビューのPOLICY_NAME
列を問い合せることで、Oracle Label Securityポリシーの名前がチェックできます。
11.3.3 Oracle Label SecurityポリシーでのOracle Database Vaultファクタの使用方法
セキュリティを強化するには、Oracle Database VaultのファクタとOracle Label Securityポリシーを統合します。
- Oracle Label SecurityポリシーでのOracle Database Vaultファクタの使用
Oracle Database VaultとOracle Label Securityの統合により、データベース・セッションの最大セキュリティ・チェックを制御できます。 - Oracle Label Securityポリシーと連携するファクタの構成
Oracle Label Securityポリシーの最大許容データ・ラベルに含めるファクタを定義できます。
11.3.3.1 Oracle Label SecurityポリシーでのOracle Database Vaultファクタの使用
Oracle Database VaultとOracle Label Securityの統合により、データベース・セッションの最大セキュリティ・チェックを制御できます。
Oracle Database Vaultでは、Oracle Label Securityポリシーに関連付けられているOracle Database Vaultファクタのラベルをマージすることによって、データベース・セッションにおける各ラベルの最大許容データをマージして、データベース・セッションの最大セキュリティ・チェックを制御します。
つまり、ラベルは、データベース表の行のアクセス権限に対する識別子として機能します。ポリシーは、表の行へのアクセスを管理するラベル、ルールおよび認可と関連付けられた名前です。
11.3.4 チュートリアル: Oracle Database VaultとOracle Label Securityの統合
Oracle Database VaultとOracle Label Securityの統合により、同じ権限を持つ2人の管理ユーザーに異なるレベルのアクセス権を付与できます。
- このチュートリアルについて
Oracle Database VaultファクタをOracle Label SecurityおよびOracle Virtual Private Database(VPD)とともに使用すると、機密データへのアクセスを制限できます。 - ステップ1: このチュートリアル用のユーザーの作成
このチュートリアル用に2つの管理ユーザーを作成する必要があります。 - ステップ2: Oracle Label Securityポリシーの作成
次に、Oracle Label Securityポリシーを作成し、ユーザーに適切な権限を付与できます。 - ステップ3: OLS認可を制御するためのOracle Database Vaultルールの作成
Oracle Label Securityポリシーの作成後、これと連携するDatabase Vaultルールを作成できます。 - ステップ4: ルール・セットを使用するためのALTER SYSTEMコマンド・ルールの更新
ルール・セットを使用する前に、デフォルト・コマンド・ルールであるALTER SYSTEMコマンド・ルールを更新する必要があります。 - ステップ5: 認可のテスト
すべてのコンポーネントの準備ができたら、認可をテストする準備ができます。 - ステップ6: このチュートリアルのコンポーネントの削除
コンポーネントが不要になった場合、このチュートリアルで作成したコンポーネントを削除できます。
11.3.4.1 このチュートリアルについて
Oracle Database VaultファクタをOracle Label SecurityおよびOracle Virtual Private Database(VPD)とともに使用すると、機密データへのアクセスを制限できます。
このようなデータを制限して、セキュリティ管理者が任意のデータ・セッションに対して定義するファクタの適切な組合せが存在する場合にのみデータベース・セッションに公開されるようにすることができます。
11.3.4.4 ステップ3: OLS認可を制御するためのOracle Database Vaultルールの作成
Oracle Label Securityポリシーの作成後、これと連携するDatabase Vaultルールを作成できます。
11.3.4.5 ステップ4: ルール・セットを使用するためのALTER SYSTEMコマンド・ルールの更新
ルール・セットを使用する前に、デフォルト・コマンド・ルールであるALTER SYSTEMコマンド・ルールを更新する必要があります。
11.3.5 関連するレポートおよびデータ・ディクショナリ・ビュー
Oracle Database Vaultには、Oracle Database VaultとOracle Label Securityの統合に関する情報が示されるレポートおよびデータ・ディクショナリ・ビューが用意されています。
表11-1では、Oracle Database Vaultレポートを示します。
表11-1 Oracle Database Vault-Oracle Label Security統合に関連するレポート
レポート | 説明 |
---|---|
「ファクタ構成の問題」レポート |
Oracle Label Securityポリシーが存在しないファクタが表示されます。 |
「アイデンティティ構成の問題」レポート |
無効なラベル・アイデンティティ(このアイデンティティのOracle Label Securityラベルが削除されていて、すでに存在しない)が表示されます。 |
「セキュリティ・ポリシー除外」レポート |
|
表11-2に、Oracle Database Vaultで使用される既存のOracle Label Securityポリシーに関する情報を提供するデータ・ディクショナリ・ビューを示します。
表11-2 Oracle Label Securityに使用されるデータ・ディクショナリ・ビュー
データ・ディクショナリ・ビュー | 説明 |
---|---|
|
定義されているOracle Label Securityポリシーが表示されます。 |
|
Oracle Label Securityポリシーに関連付けられているファクタが表示されます。 |
|
各ポリシーの |
11.4 Oracle Database VaultとOracle Data Guardの統合
Oracle Database VaultとOracle Data Guardの統合では、まずプライマリ・データベースを構成し、次にスタンバイ・データベースを構成します。
- ステップ1: プライマリ・データベースの構成
DGMGRL
ユーティリティを実行し、Oracle Database Vaultを構成して有効化し、次にALTER SYSTEM
文を実行して、プライマリ・データベースを構成する必要があります。 - ステップ2: スタンバイ・データベースの構成
スタンバイ・データベースに使用されるデータベース内でスタンバイ・データベース構成を実行できます。 - Oracle Database VaultとOracle Active Data Guardの統合後の監査の動作
Oracle Database VaultをOracle Active Data Guardと統合した後は、監査の構成内容によって、監査レコードがどのように生成されるかが変わります。 - Oracle Data Guard環境でのOracle Database Vaultの無効化
Oracle Data Guard環境でOracle Database Vaultを無効にする場合は、まずプライマリ・データベースで、次にスタンバイ・データベースでプロシージャを実行する必要があります。
11.4.1 ステップ1: プライマリ・データベースの構成
DGMGRL
ユーティリティを実行し、Oracle Database Vaultを構成して有効化し、次にALTER SYSTEM
文を実行して、プライマリ・データベースを構成する必要があります。
11.4.3 Oracle Database VaultとOracle Active Data Guardの統合後の監査の動作
Oracle Database VaultをOracle Active Data Guardと統合した後は、監査の構成内容によって、監査レコードがどのように生成されるかが変わります。
読取り専用の問合せ用にActive Data Guardフィジカル・スタンバイ・データベースを使用する場合は、統合監査を使用する必要があります。Oracle Database Vaultでは、従来のDatabase Vault監査表(DVSYS.AUDIT_TRAILS$
)に書き込むことができません。統合監査により、Database Vaultの監査データがOracle Active Data Guardフィジカル・スタンバイ・データベースのオペレーティング・システムのログ・ファイルに確実に書き込まれます。これらのログ・ファイルのデータは統合監査証跡に移動できます。Database Vaultのアクティビティを監査するには、従来の監査がサポートされなくなったため、統合監査ポリシーを作成する必要があることに注意してください。
11.4.4 Oracle Data Guard環境でのOracle Database Vaultの無効化
Oracle Data Guard環境でOracle Database Vaultを無効にする場合は、まずプライマリ・データベースで、次にスタンバイ・データベースでプロシージャを実行する必要があります。
次の順序で、プライマリ・データベースとスタンバイ・データベースでOracle Database Vaultの無効化を実行します。
- プライマリ・データベースでOracle Database Vaultを無効にします。
- セカンダリ・データベースでOracle Database Vaultを無効にします。
- プライマリ・データベースを再起動します。
- 各スタンバイ・データベースを再起動します。
11.5 Oracle Database Configuration Assistantを使用したOracle Internet Directoryの構成
Oracle Database Vault対応データベースでOracle Internet Directoryを使用できます。
ただし、Oracle Database Configuration Assistant (DBCA)を使用して、Oracle Internet Directory (OID)を構成する場合、まずOracle Database Vaultを無効にする必要があります。
11.6 Oracle Database Vaultとエンタープライズ・ユーザー・セキュリティの統合
Oracle Database Vaultは、Oracle Enterprise User Securityと統合できます。
- Oracle Database Vaultとエンタープライズ・ユーザー・セキュリティの統合について
エンタープライズ・ユーザー・セキュリティでは、データベース・ユーザーと認可が1箇所で集中管理されます。 - エンタープライズ・ユーザー認可の構成
エンタープライズ・ユーザー認可を構成するには、Oracle Database Vaultルール・セットを作成して、ユーザー・アクセスを制御する必要があります。 - Oracle Database Vaultアカウントをエンタープライズ・ユーザー・アカウントとして構成
既存のOracle Database Vaultユーザー・アカウントをPDBのエンタープライズ・ユーザー・アカウントとして構成できます。
11.6.1 Oracle Database Vaultとエンタープライズ・ユーザー・セキュリティの統合について
エンタープライズ・ユーザー・セキュリティでは、データベース・ユーザーと認可が1箇所で集中管理されます。
Oracle Identity Managementと組み合せ、Oracle Database Enterprise Editionで使用できます。
通常、Oracle Database VaultをOracle Enterprise User Securityと統合するには、適切なレルムを構成して、保護の対象となるデータベース内のデータを保護します。
必要に応じてOracle Database Vaultレルムを定義した後に、エンタープライズ・ユーザーに対してアクセスを許可または禁止するルール・セットを作成できます。
ノート:
エンタープライズ・ユーザー・セキュリティ(EUS)は、Oracle Database 23cで非推奨になりました。集中管理ユーザー(CMU)の使用に移行することをお薦めします。この機能を使用すると、エンタープライズ・ユーザー認証およびデータベースへの認可用のディレクトリ・サービスを介在させることなく、Microsoft Active Directoryに直接接続できます。Oracle Databaseがクラウドにある場合は、クラウド・アイデンティティ・プロバイダとの新しい統合の1つに移行することもできます。
11.6.2 エンタープライズ・ユーザー認可の構成
エンタープライズ・ユーザー認可を構成するには、Oracle Database Vaultルール・セットを作成して、ユーザー・アクセスを制御する必要があります。
11.7 Oracle Database VaultとOracle APEXの統合
Oracle Database Vaultは、Oracle APEXと統合できます。
- Oracle Database VaultとOracle APEXの統合について
Oracle APEXは、SQLおよびPL/SQLを使用してWebアプリケーションを開発するためのOracleの主要ツールです。 - Oracle Database Vaultが有効になっているOracle APEXのインストールまたはアップグレード
Oracle Database Vaultが有効になっている場合は、Oracle APEXのインストールまたはアップグレードに追加の権限が必要です。 - Oracle Database VaultアクティビティのためのOracle APEXスキーマの認可
Oracle APEXスキーマ(APEX_SCHEMA
など)を、Oracle APEXに必要なOracle Database Vaultレルムおよび認可に追加する必要があります。 - Oracle Schedulerを使用するためのOracle APEXの認可
Oracle APEXはOracle Schedulerを使用しており、引き続き使用するには権限が必要です。 - DDLタスクを実行するためのOracle APEXの認可
アクセス権を持っているが、追加のOracle Database Vault制御の対象となる可能性があるオブジェクトに対してDDL権限を使用するよう、Oracle APEXスキーマを認可する必要があります - 情報ライフサイクル・メンテナンス・タスクを実行するためのOracle APEXの認可
Oracle APEXスキーマを認可して、メンテナンス・タスクを実行する必要があります。 - Oracle Rest Data Servicesのプロキシ・ユーザーへのOracle APEXの認可
Oracle Rest Data Services (ORDS)を使用する場合は、プロキシ・ユーザーを認可する必要があります。 - Oracle Database Vaultによって保護されるOracle APEXおよびアプリケーション・オブジェクト
Oracle Database Vaultレルムおよびコマンド・ルールによって保護されているオブジェクトは、Oracle APEXを統合した後も引き続き保護されます。 - Oracle APEXとDatabase Vaultの統合のトラブルシューティング
Oracle APEXとDatabase Vaultの統合に問題がある場合は、トレースおよびOracle Database Vaultシミュレーション・モードを使用してこれらの問題を診断できます。
11.7.1 Oracle Database VaultとOracle APEXの統合について
Oracle APEXは、SQLおよびPL/SQLを使用してWebアプリケーションを開発するためのOracleの主要ツールです。
Oracle Database Vaultを有効にして、Oracle APEXで開発されたアプリケーションを保護できます。Oracle Database Vault対応データベースでOracle APEXを使用するには、Oracle Database Vault対応サーバーにOracle APEXをインストールしてから、適切なプラガブル・データベース(PDB)で必要な認可を実行する必要があります。
11.7.2 Oracle Database Vaultが有効なOracle APEXのインストールまたはアップグレード
Oracle Database Vaultが有効な場合は、Oracle APEXのインストールまたはアップグレードに追加の権限が必要です。
11.7.3 Oracle Database VaultアクティビティのためのOracle APEXスキーマの認可
Oracle APEXスキーマ(APEX_SCHEMA
など)を、Oracle APEXで必要なOracle Database Vaultレルムおよび認可に追加する必要があります。
11.7.4 Oracle Schedulerを使用するためのOracle APEXの認可
Oracle APEXはOracle Schedulerを使用しており、引き続き使用するには権限が必要です。
11.7.5 DDLタスクを実行するためのOracle APEXの認可
アクセス権を持っているが、追加のOracle Database Vault制御の対象となる可能性があるオブジェクトに対してDDL権限を使用するよう、Oracle APEXスキーマを認可する必要があります。
11.7.7 Oracle Rest Data Servicesのプロキシ・ユーザーへのOracle APEXの認可
Oracle Rest Data Services (ORDS)を使用する場合は、プロキシ・ユーザーを認可する必要があります。
11.7.8 Oracle Database Vaultによって保護されるOracle APEXおよびアプリケーション・オブジェクト
Oracle Database Vaultレルムおよびコマンド・ルールによって保護されているオブジェクトは、Oracle APEXの統合後も引き続き保護されます。
Oracle Database Vaultがこれらのオブジェクトへのアクセス権を付与する前に、同じ権限および認可を満たす必要があります。たとえば、HR
スキーマ・オブジェクトへのアクセスを必要とするOracle APEXワークスペースを作成し、HR
スキーマ・オブジェクトを保護するOracle Database Vaultレルムがある場合、そのワークスペースにはレルムにアクセスするための認可が必要です。
関連トピック
11.7.9 Oracle APEXおよびDatabase Vault統合のトラブルシューティング
Oracle APEXとDatabase Vaultの統合に問題がある場合は、トレースおよびOracle Database Vaultシミュレーション・モードを使用してこれらの問題を診断できます。
- トレース: トレース・ファイルを使用すると、サーバー・プロセス・イベントおよびバックグラウンド・プロセス・イベントのOracle Database Vaultデータベース・インスタンスを追跡できます。トレース・ファイルを使用して、Oracle Database Vaultポリシーの認可が成功したか失敗したかを確認します。また、バグやその他の予期しない動作などの問題の解決にも役立ちます。
- シミュレーション・モード: Oracle Database Vaultのレルムおよびコマンド・ルールによってSQL実行をブロックするかわりに、シミュレーション・モードを使用してシミュレーション・ログに違反を記録できます。Oracle Database Vaultでは、これらのエラーを一元的な場所に格納するため、簡単に分析できます。