13 Oracle Database Vault環境でのDBA操作
データベース管理者は、Oracle Data Pumpなどの製品とのDatabase Vaultの使用など、Oracle Database Vault環境で操作を実行できます。
- Oracle Database VaultでのDDL操作の実行
Oracle Database Vaultでのデータ定義言語(DDL)操作は、スキーマの所有権やパッチ・アップグレードなどの状況による影響を受ける場合があります。 - Oracle Database VaultのOracle Enterprise Managerとの使用
Oracle Database Vault管理者は、他のデータベースへのポリシーの伝播など、Oracle Enterprise Manager Cloud Controlでタスクを実行できます。 - Oracle Database VaultでのOracle Data Pumpの使用
データベース管理者は、Oracle Data PumpユーザーにDatabase Vault環境で作業する認可を付与します。 - Oracle Database VaultでのOracle Schedulerの使用
データベース・ジョブのスケジュールを担当するユーザーは、Oracle Database Vault固有の認可を有している必要があります。 - Oracle Database Vaultでの情報ライフサイクル管理の使用
Oracle Database Vault対応データベースで情報ライフサイクル管理操作を実行するユーザーは、これらの操作を実行するために認可を受けている必要があります。 - Oracle Database Vaultでのプリプロセッサ・プログラムの実行
外部表からプリプロセッサ・プログラムを実行するユーザーには、Oracle Database Vault固有の認可が必要です。 - Oracle Recovery ManagerとOracle Database Vault
Oracle Database Vault環境ではRecovery Manager (RMAN)を使用できます。 - Oracle Database VaultでOracle Streamsを使用するための権限
Oracle Database Vault環境でOracle Streamsを使用する場合、適切な権限が必要です。 - Oracle Database VaultでXStreamを使用するための権限
Oracle Database Vault環境でXStreamを使用する場合、適切な権限が必要です。 - Oracle Database VaultでOracle GoldenGateを使用するための権限
Oracle Database Vault環境でOracle GoldenGateを使用する場合、適切な権限が必要です。 - Oracle Database Vault環境でのデータ・マスキングの使用
Oracle Database Vault環境でデータ・マスキングを実行するには、正しい認可が必要です。 - スタンドアロンのOracle DatabaseをPDBに変換してCDBにプラグイン
リリース12c以降のスタンドアロンのOracle DatabaseはPDBに変換可能で、さらにそのPDBはCDBにプラグインできます。 - Oracle Database Vault環境でのORADEBUGユーティリティの使用
ORADEBUG
ユーティリティは、主にOracleサポートがOracle Databaseで生じる問題を診断する場合に使用します。 - Oracle Database Vault環境でのパッチ操作の実行
ユーザーSYS
がOracle Database Vault対応データベースでパッチ操作を実行するには、DV_PATCH_ADMIN
ロールが必要です。
13.1 Oracle Database VaultでのDDL操作の実行
Oracle Database Vaultでのデータ定義言語(DDL)操作は、スキーマの所有権やパッチ・アップグレードなどの状況による影響を受ける場合があります。
- Oracle Database VaultでのDDL操作の実行に関する制限
Oracle Database Vault構成によっては、DDL操作が制限されてOracle Database Vault環境でDDL認可が必要になる場合があります。 - DDL操作におけるDV_PATCH_ADMINロールの影響
DV_PATCH_ADMIN
ロールを付与されたオブジェクト所有者およびユーザーは、DDL認可要件から除外されます。
13.1.1 Oracle Database VaultでのDDL操作の実行に関する制限
Oracle Database Vault構成によっては、DDL操作が制限されてOracle Database Vault環境でDDL認可が必要になる場合があります。
具体的には、次のいずれかの特性を持つスキーマでDDL操作を実行するには、DDL認可が必要です。
- スキーマが、有効なレルムによって保護されるオブジェクトの所有者である。
- スキーマが、有効なレルムに直接またはロールを介して認可される。
- スキーマにオブジェクト権限が直接、または有効なレルムによって保護されているオブジェクトのロールを介して付与される。
- スキーマにOracle Database Vaultのロールが直接またはロールを介して付与される。
DV_PATCH_ADMIN
ロールを付与されたオブジェクト所有者およびユーザーは、DDL認可要件から除外されます。DBMS_MACADM.AUTHORIZE_DDL
プロシージャを使用して、特定のスキーマに対してDDL操作を実行するユーザーを認可できます。ただし、DDL認可では、権限受領者がレルムで保護されたオブジェクトまたはスキーマに対してDDL操作を実行できるわけではありません。このような操作を有効化するには、レルムに対してユーザーを認可する必要があります。この認可を与えられているユーザーについて情報を確認するには、DBA_DV_DDL_AUTH
データ・ディクショナリ・ビューに問い合せます。
Oracle Database VaultがOracle Database 21cより古い以前のリリースからアップグレードされた場合、デフォルトのDDL認可(%
, %
)が存在する可能性があり、これにより、ユーザーは明示的なDDL認可なしで任意のスキーマに対してDDL操作を実行できます。セキュリティを強化するために、Oracleでは、DBMS_MACADM.UNAUTHORIZE_DDL('%', '%')
を実行してデフォルトのDDL認可を削除し、DDL操作を実行する必要があるユーザーにのみ必要なDDL認可を付与することをお薦めします。
関連トピック
13.1.2 DDL操作におけるDV_PATCH_ADMINロールの影響
DV_PATCH_ADMIN
ロールを付与されたオブジェクト所有者およびユーザーは、DDL認可要件から除外されます。
DBMS_MACADM.AUTHORIZE_DDL
プロシージャを使用して、特定のスキーマに対してDDL操作を実行するユーザーを認可できます。ただし、DDL認可では、権限受領者がレルムで保護されたオブジェクトまたはスキーマに対してDDL操作を実行することはできません。このような操作を許可するには、レルムに対してユーザーを認可する必要があります。この認可を与えられているユーザーについて情報を確認するには、DBA_DV_DDL_AUTH
データ・ディクショナリ・ビューに問い合せます。
関連トピック
13.2 Oracle Database VaultのOracle Enterprise Managerとの使用
Oracle Database Vault管理者は、他のデータベースへのポリシーの伝播など、Oracle Enterprise Manager Cloud Controlでタスクを実行できます。
- 他のデータベースへのOracle Database Vault構成の伝播
Database Vault構成(レルム構成など)を、Database Vaultで保護された他のデータベースに伝播できます。 - Oracle Database Vaultポリシーに対するEnterprise Manager Cloud Controlアラート
Oracle Database Vaultアラートを表示するには、DV_OWNER
、DV_ADMIN
またはDV_SECANALYST
ロールが付与されている必要があります。 - Enterprise Manager Cloud ControlにおけるOracle Database Vault固有レポート
Database Vaultホーム・ページから、違反に関する情報を確認できます。 - Database Vault環境でのDBSNMPアカウント・パスワードの変更
DBSNMP
ユーザー・アカウントのパスワードを変更するには、あらかじめ、このアカウントからDV_MONITOR
ロールを取り消しておく必要があります。
13.2.1 「他のデータベースへのOracle Database Vault構成の伝播」
Database Vault構成(レルム構成など)を、Database Vaultで保護された他のデータベースに伝播できます。
-
DV_OWNER
またはDV_ADMIN
ロールおよびSELECT ANY DICTIONARY
権限を付与されているユーザーとして、Cloud ControlからOracle Database Vault Administratorにログインします。ログイン方法については、「Oracle Database Vaultへのログイン」で説明します。 -
「Database Vault」ホームページの「Database Vaultポリシー伝播」で、「Database Vaultポリシー伝播」を選択します。
「ポリシー伝播」サブページの「使用可能なポリシー」領域に、現在のデータベースのために作成されたOracle Database Vault構成(つまり、レルム、コマンド・ルール、ルール・セットおよびセキュア・アプリケーション・ロールのために作成された構成)のサマリーが表示されます。Oracle Database release 12c (12.2)で導入されたOracle Database Vaultポリシーは表示されません。ここから、これらの構成を他のデータベースに伝播できます。
-
「使用可能なポリシー」で、他のデータベースに伝播する各構成を選択します。
図policy_propagation122.pngの説明 -
「宛先データベース」で「追加」ボタンをクリックします。
-
「検索と選択: Database Vaultに対応した宛先データベース」で宛先データベースを検索し、構成の伝播先となる各データベースを選択します。「選択」ボタンをクリックします。
-
「宛先データベース」で次の処理を行います。
-
「宛先データベースに資格証明を適用」で、伝播する構成を含むDatabase Vaultデータベースの管理者のユーザー名とパスワードを入力します。
この機能により、Database Vault管理者のユーザー名とパスワードが、選択したすべての宛先データベースに適用されます。
-
構成の伝播先となる各データベースを選択します。
-
各データベースのDatabase Vault管理者のユーザー名とパスワードを入力します。
-
「適用」ボタンをクリックします。
-
-
「伝播オプション」ページで、次のオプションのオン/オフを選択します。
シードされたレルム、コマンド・ルール、ルール・セットなどに加えられた変更は、宛先データベースに伝播されません。カスタム作成されたデータのみが伝播されます。
-
失敗時にリストアします。: 伝播操作でエラーが発生した場合に、伝播がロールバックされます。つまり、宛先データベースの元のポリシーがリストアされます。このオプションを選択しない場合、宛先データベースでポリシーの伝播が続けられ、エラーは無視されます。
-
ユーザー定義ポリシーが存在する場合は、伝播をスキップします。: 宛先データベースにユーザー定義構成がすでにある場合、伝播操作は試行されません。このオプションを選択しない場合、ユーザー定義ポリシーが宛先データベースにあるかどうかに関係なく、既存の構成はすべてクリアされ、ソース・データベースからの構成が宛先データベースに適用されます。
-
Database VaultメトリックのEnterprise Managerメトリックしきい値を伝播します。: ソース・データベースにOracle Database Vaultメトリックしきい値が設定されている場合、これらのしきい値も宛先データベースに伝播されます。このオプションを選択しない場合、構成のみが伝播され、Oracle Database Vaultしきい値は伝播されません。
-
-
「OK」ボタンをクリックします。
-
「確認」ウィンドウで「OK」をクリックします。
成功または失敗を示すメッセージが表示されます。伝播が成功した場合、構成は宛先データベースでただちにアクティブになります。
13.2.2 Oracle Database Vaultポリシーに対するEnterprise Manager Cloud Controlアラート
Oracle Database Vaultアラートを表示するには、DV_OWNER
、DV_ADMIN
またはDV_SECANALYST
ロールが付与されている必要があります。
アラートは次のとおりです。
-
Database Vaultレルム違反未遂。このアラートにより、Oracle Database Vaultセキュリティ分析者(
DV_SECANALYST
ロール)はDatabase Vaultデータベースでの違反試行を監視できます。アラートの影響を受けるレルムを選択し、エラー・コードを使用して様々な試行タイプに基づいてレルムをフィルタリングできます。このメトリックは、メトリックおよびポリシーの設定ページで有効化できます。デフォルトでは、レルム違反未遂は24時間ごとに収集されます。 -
Database Vaultコマンド・ルール違反未遂。このアラートの機能は、対象がコマンド・ルール違反であることを除き、Database Vaultレルム違反未遂と同じです。
-
Database Vaultレルム構成の問題。このメトリックは、レルムの構成を追跡し、構成が正しくない場合にアラートを生成します。このメトリックは、Oracle Database Vaultのインストール時に有効化され、デフォルトで1時間ごとにデータを収集します。
-
Database Vaultコマンド・ルール構成の問題。このアラートの機能は、対象がコマンド・ルールに対する構成変更であることを除き、Database Vaultレルム構成の問題と同じです。
-
Database Vaultポリシー変更。このメトリックでは、Database Vaultポリシー(レルムやコマンド・ルールに対するポリシー)に変更があると、アラートが生成されます。詳細なポリシー変更レポートが提供されます。
13.2.3 Enterprise Manager Cloud ControlにおけるOracle Database Vault固有レポート
Database Vaultホーム・ページから、違反に関する情報を確認できます。
これらの違反は、次のとおりです。
-
レルムおよびコマンド・ルール違反未遂トップ5
-
データベース・ユーザーおよびクライアント・ホストによる違反未遂トップ5
-
違反未遂の詳細分析の時系列グラフィック・レポート
Database Vaultレポートの完全なアクセス権を持つには、DV_OWNER
、DV_ADMIN
またはDV_SECANALYST
ロールが付与されたユーザーとしてDatabase Vault Administratorにログインする必要があります。
13.2.4 Database Vault環境でのDBSNMPアカウント・パスワードの変更
DBSNMP
ユーザー・アカウントのパスワードを変更するには、あらかじめ、このアカウントからDV_MONITOR
ロールを取り消しておく必要があります。
Oracle Database Vault環境では、DBSNMP
ユーザー・アカウントにはDV_MONITOR
ロールが付与されます。(DBSNMP
ユーザーが自分自身のパスワードを変更する場合は、DV_MONITOR
ロールを取り消さずにすぐに変更できます。)
DV_OWNER
ロールを付与されているアカウントを使用して、データベース・インスタンスにログインします。DBSNMP
ユーザー・アカウントからDV_MONITOR
ロールを取り消します。DV_ACCTMGR
ロールを付与されているユーザーとして接続し、DBSNMP
ユーザー・アカウントのパスワードを変更します。DV_OWNER
ユーザーとして接続し、DV_MONITOR
ロールをDBSNMP
ユーザー・アカウントに再び付与します。
13.3 Oracle Database VaultでのOracle Data Pumpの使用
データベース管理者は、Oracle Data PumpユーザーにDatabase Vault環境で作業する認可を付与します。
- Oracle Database VaultでのOracle Data Pumpの使用について
Database Vault環境でOracle Data Pumpを使用しているデータベース管理者には、データのエクスポートおよびインポートのためのDatabase Vault固有の認可が必要です。 - ユーザーへのData Pumpの通常エクスポート操作および通常インポート操作の認可
Database Vault環境でOracle Data Pumpエクスポート操作およびインポート操作を実行する管理者に、様々なタイプの認可を使用できます。 - ユーザーへのData Pumpのトランスポータブル・エクスポート操作およびトランスポータブル・インポート操作の認可
Oracle Data Pumpのトランスポータブル操作を実行するユーザーに様々な認可レベルを付与できます。 - Database Vault環境でのデータのエクスポートまたはインポートのガイドライン
Oracle Data Pumpデータベース管理者に適切な認可を付与すると、必要なエクスポートまたはインポート操作を実行できるようになります。
13.3.1 Oracle Database VaultでのOracle Data Pumpの使用について
Database Vault環境でOracle Data Pumpを使用しているデータベース管理者には、データのエクスポートおよびインポートのためのDatabase Vault固有の認可が必要です。
標準のOracle Data Pump権限に加えて、この権限が必要です。これらのユーザーがOracle Data Pumpのトランスポータブル表領域操作を実行する場合、特殊な認可が必要です。DBA_DV_DATAPUMP_AUTH
データ・ディクショナリ・ビューを問い合せることで、Oracle Database Vault環境でのData Pumpの使用に関するユーザーの認可を確認できます。
関連項目:
-
Oracle Data Pumpの詳細は、『Oracle Databaseユーティリティ』を参照してください。
-
トランスポータブル表領域の詳細は、『Oracle Database管理者ガイド』を参照してください。
13.3.2 ユーザーへのData Pumpの通常エクスポート操作および通常インポート操作の認可
Database Vault環境でOracle Data Pumpエクスポート操作およびインポート操作を実行する管理者に、様々なタイプの認可を使用できます。
- Oracle Data Pumpの通常操作のユーザーへの認可について
Oracle Data Pump認可を持つユーザーは、Database Vault環境で通常のOracle Data Pump操作を実行できます。 - Oracle Data Pumpの通常操作に対するDatabase Vault認可のレベル
Oracle Database Vaultでは、Database Vault環境でのOracle Data Pumpの通常操作に必要な認可にいくつかのレベルがあります。 - Database VaultにおけるOracle Data Pumpの通常操作をユーザーに認可
データベース管理者に、Oracle Database Vault環境で通常操作にData Pumpを使用する認可を付与できます。 - Oracle Data Pump認可のユーザーからの取消し
通常操作のためにOracle Data Pumpを使用するデータベース管理者の認可を取り消すことができます。
13.3.2.1 Oracle Data Pumpの通常操作のユーザーへの認可について
Oracle Data Pump認可を持つユーザーは、Database Vaul環境で通常のOracle Data Pump操作を実行できます。
完全レベルData Pump認可では、トランスポータブル・エクスポートおよびインポート操作も実行できます。
関連項目:
トランスポータブル・エクスポート操作およびトランスポータブル・インポート操作のみをユーザーが実行できるようにするには、「ユーザーへのData Pumpのトランスポータブル・エクスポート操作およびトランスポータブル・インポート操作の認可」を参照してください13.3.2.2 Oracle Data Pumpの通常操作に対するDatabase Vault権限のレベル
Oracle Database Vaultでは、Database Vault環境でのOracle Data Pumpの通常操作に必要な認可にいくつかのレベルがあります。
表13-1に、これらのレベルを示します。
表13-1 Oracle Data Pumpの通常操作のための認可のレベル
シナリオ | 必要な認可 |
---|---|
データベース管理者は、データを別のスキーマにインポートします。 |
このユーザーには、 |
データベース管理者は、Database Vault保護なしのスキーマでデータをエクスポートまたはインポートします。 |
このユーザーには、標準のOracle Data Pump権限を付与する必要があります。 |
データベース管理者は、保護スキーマでデータをエクスポートまたはインポートします。 |
ユーザーがデータをインポートする場合は、このユーザーに |
データベース管理者は、データベース全体の内容をエクスポートまたはインポートします。 |
|
脚注1
デフォルトではBECOME USER
権限はIMP_FULL_DATABASE
ロールに含まれますが、Oracle Database Vault環境ではこの権限は取り消されます。
13.3.2.3 Database VaultにおけるOracle Data Pumpの通常操作をユーザーに認可
データベース管理者に、Oracle Database Vault環境で通常操作にData Pumpを使用する権限を付与できます。
13.3.3 ユーザーへのData Pumpのトランスポータブル・エクスポート操作およびトランスポータブル・インポート操作の認可
Oracle Data Pumpのトランスポータブル操作を実行する必要があるユーザーに認可レベルを付与できます。
- Oracle Data Pumpのトランスポータブル操作のユーザーへの認可について
様々なレベルのトランスポータブル操作認可をユーザーに付与できます。 - Data Pumpのトランスポータブル操作に対するDatabase Vault権限のレベル
Oracle Database Vaultでは、Database Vault環境でのエクスポートおよびインポート・トランスポータブル操作を実行する必要があるユーザーに必要な認可にいくつかのレベルがあります。 - Database VaultにおけるData Pumpのトランスポータブル操作をユーザーに認可
ユーザーがDatabase Vault環境でOracle Data Pumpのトランスポータブル・エクスポートおよびインポートを実行することを認可できます。 - トランスポータブル表領域権限のユーザーからの取消し
Data Pumpを使用するデータベース管理者の認可を取り消すことができます。
13.3.3.1 Oracle Data Pumpのトランスポータブル操作のユーザーへの認可について
様々なレベルのトランスポータブル操作権限をユーザーに付与できます。
トランスポータブル・エクスポートとトランスポータブル・インポートの操作を実行する権限のみをユーザーに付与する場合は、タスクに基づいて、ユーザーに適切な権限を付与する必要があります。
関連項目:
Database Vault環境で通常の操作を実行するためにOracle Data Pump権限がユーザーに必要な場合、「ユーザーへのData Pumpの通常エクスポート操作および通常インポート操作の認可」を参照してください13.3.3.2 Data Pumpのトランスポータブル操作に対するDatabase Vault権限のレベル
Oracle Database Vaultでは、Database Vault環境でトランスポータブル・エクスポートとトランスポータブル・インポートの操作を実行する必要があるユーザーに必要な認可にいくつかのレベルがあります。
表13-2に、これらのレベルを示します。
表13-2 Oracle Data Pumpのトランスポータブル操作に対する権限のレベル
シナリオ | 必要な認可 |
---|---|
データベース管理者は、Database Vault保護なしの表領域または表のトランスポータブル・エクスポートを実行します。 |
このユーザーには、標準のOracle Data Pump権限を付与する必要があります。 |
データベース管理者は、Database Vault保護ありの表領域のトランスポータブル・エクスポートを実行します(たとえば、その表領域に存在する表オブジェクトのレルムやコマンドルール)。 |
完全データベース・レベルのOracle Data Pump権限を付与されたユーザーも、( |
データベース管理者は、Database Vault保護ありの表領域内で表のトランスポータブル・エクスポートを実行します(たとえば、エクスポートする表を含む表領域に存在する表オブジェクトのレルムやコマンド・ルール)。 |
完全データベース・レベルのOracle Data Pump権限を付与されたユーザーも、( |
データベース管理者は、データベース全体の内容のトランスポータブル・エクスポートを実行します。 |
|
データベース管理者は、ネットワーク・リンクを使用して、Database Vault保護なしの表領域または表のトランスポータブル・インポートを実行します。 |
データベース管理者と接続ユーザー両方の |
データベース管理者は、ネットワーク・リンクを使用して、Database Vault保護ありの表領域のトランスポータブル・インポートを実行します(たとえば、その表領域に存在する表オブジェクトのレルムやコマンド・ルール)。 |
Database Vault固有の完全データベース・レベルのOracle Data Pump権限を付与されたユーザーも、( |
データベース管理者は、ネットワーク・リンクを使用して、Database Vault保護ありのトランスポータブル表領域内で表をインポートします(たとえば、エクスポートする表を含む表領域に存在する表オブジェクトのレルムやコマンド・ルール)。 |
Database Vault固有の完全データベース・レベルのOracle Data Pump権限を付与されたユーザーも、( |
データベース管理者は、ネットワーク・リンクを使用してデータベース全体の内容のトランスポータブル・インポートを実行します。 |
|
13.3.3.3 Database VaultにおけるData Pumpのトランスポータブル操作をユーザーに認可
ユーザーがDatabase Vault環境でOracle Data Pumpのトランスポータブル・エクスポートおよびインポートを実行することを認可できます。
13.3.4 Database Vault環境でのデータのエクスポートまたはインポートのガイドライン
Oracle Data Pumpデータベース管理者に適切な認可を付与すると、必要なエクスポートまたはインポート操作を実行できるようになります。
作業を開始する前に、次のガイドラインに従う必要があります。
-
データベースのデータファイルの完全バックアップを作成します。これにより、新しくインポートしたデータが気に入らなかった場合、容易にデータベースを元の状態に戻すことができます。このガイドラインは、侵入者が自分のポリシーを使用するようにOracle Data Pumpエクスポート・データを変更した場合に特に有用です。
-
複数のスキーマまたは表をエクスポートおよびインポートする方法を決定します。
DBMS_MACADM.AUTHORIZE_DATAPUMP_USER
プロシージャでは複数のスキーマまたは表は指定できませんが、次のいずれかの方法でこの作業を行うことできます。-
それぞれのスキーマまたは表に対して
DBMS_MACADM.AUTHORIZE_DATAPUMP_USER
プロシージャを実行し、次にEXPDP
ユーティリティとIMPDP
ユーティリティのSCHEMAS
パラメータまたはTABLES
パラメータのオブジェクトのリストを指定します。 -
全データベースのエクスポートまたはインポート操作を実行します。この場合、次のガイドランを参照してください。
-
-
データベース全体のエクスポートまたはインポート操作を実行する場合は、EXPDPまたはIMPDP FULLオプションをYに設定します。この設定により、
DVSYS
スキーマが取得されるため、ユーザーにDV_OWNER
ロールが付与されていることを確認してください。
次のことに注意してください。
-
Oracle Database Vaultが有効になっている場合、ダイレクト・パス・オプション(
direct=y
)でレガシーのEXP
ユーティリティとIMP
ユーティリティは使用できません。 -
DBMS_MACADM.AUTHORIZE_DATAPUMP_USER
プロシージャを通じてDatabase Vault固有のOracle Data Pump権限を付与されている、またはDBMS_MACADM.AUTHORIZE_TTS_USER
プロシージャを通じてトランスポータブル表領域の権限を付与されているユーザーは、データベース・オブジェクトのエクスポートとインポートを実行できますが、通常アクセス権のないスキーマ表に対するSELECT
問合せなど、他のアクティビティを実行することはできません。同様に、指定されたデータベース・オブジェクト外部のオブジェクトに対してData Pump操作を実行することもできません。 -
データベース全体をエクスポートまたはインポートするユーザーに
DV_OWNER
ロールを付与する必要があります。これは、データベース全体のエクスポートには、Oracle Database Vaultポリシーを格納するDVSYS
スキーマへのアクセスが必要になるためです。ただし、DVSYS
スキーマ自体をエクスポートすることはできません。Data Pumpは、保護定義のみをエクスポートします。インポート・プロセスを開始する前に、ターゲット・データベースにはDVSYS
スキーマが必要であり、Database Vaultが有効になっている必要があります。)逆に、インポートされたポリシーをターゲット・データベースに適用するData Pumpインポート操作では、内部的にDBMS_MACADM
PL/SQLパッケージが使用され、ここでData PumpユーザーにDV_OWNER
ロールが必要になります。
関連項目:
Oracle Data Pumpの詳細は、『Oracle Databaseユーティリティ』を参照してください。13.4 Oracle Database VaultでのOracle Schedulerの使用
データベース・ジョブのスケジュールを担当するユーザーは、Oracle Database Vault固有の認可を有している必要があります。
- Oracle Database VaultでのOracle Schedulerの使用について
付与する必要がある認可レベルは、タスクを実行する管理者のスキーマによって異なります。 - ジョブ・スケジュール管理者へのDatabase Vaultの認可の付与
Database Vault環境で、ユーザーにデータベース・ジョブをスケジュールする権限を付与できます。 - ジョブ・スケジュール管理者からの権限の取消し
ユーザーからデータベース・ジョブをスケジュールする権限を取り消すことができます。
13.4.1 Oracle Database VaultでのOracle Schedulerの使用について
付与する必要がある認可レベルは、タスクを実行する管理者のスキーマによって異なります。
次のシナリオが想定されます。
-
管理者が、独自のスキーマでジョブをスケジュールする場合。スキーマがレルムで保護されている場合を除き、データベース・ジョブをスケジュールする権限が付与されている管理者は、Oracle Database Vault固有の権限がなくても作業を続行できます。スキーマがレルムで保護されている場合は、このユーザーがレルムへのアクセスを許可されていることを確認してください。
-
管理者は別のスキーマでジョブを実行するが、このジョブでOracle Database Vaultのレルムまたはコマンド・ルールで保護されたオブジェクトにアクセスしない場合。この場合、このユーザーには、ジョブに関連するシステム権限のみが必要で、Oracle Database Vault権限は必要ありません。
-
管理者がデータベースまたはリモート・データベースの任意のスキーマを含む、他のユーザーのスキーマでジョブを実行する場合。このジョブがOracle Database Vaultレルムまたはコマンド・ルールで保護されているオブジェクトにアクセスする場合、
DBMS_MACADM.AUTHORIZE_SCHEDULER_USER
プロシージャを使用して、このユーザーにDatabase Vault固有の権限を付与する必要があります。この権限は、バックグラウンド・ジョブおよびフォアグラウンド・ジョブの両方に適用されます。フォアグラウンド・ジョブの場合、権限はジョブを作成または変更した最後のユーザーに適用されます。また、スキーマ所有者(ジョブが作成された保護スキーマ)がレルムに対して認可されていることを確認してください。後から、
DBMS_MACADM.UNAUTHORIZE_SCHEDULER_USER
プロシージャを使用してこの権限を取り消すことができます。スキーマがレルムで保護されていない場合、ユーザーにDBMS_MACADM.AUTHORIZE_SCHEDULER_USER
プロシージャを実行する必要はありません。
関連トピック
13.5 Oracle Database Vaultでの情報ライフサイクル管理の使用
Oracle Database Vault対応データベースで情報ライフサイクル管理操作を実行するユーザーは、これらの操作を実行するために認可を受けている必要があります。
- Oracle Database Vaultでの情報ライフサイクル管理の使用について
Oracle Database Vaultのレルムおよびコマンド・ルールで保護されたオブジェクトに対して情報ライフサイクル管理(ILM)操作を実行する役割を担うユーザーに認可を付与できます。 - ユーザーへのDatabase VaultでのILM操作の認可
ユーザーにOracle Database Vault環境での情報ライフサイクル管理(ILM)操作の実行を認可できます。 - ユーザーからの情報ライフサイクル管理認可の取消し
Oracle Database Vault環境で情報ライフサイクル管理(ILM)操作を実行できないよう、ユーザーから認可を取り消すことができます。
13.5.1 Oracle Database Vaultでの情報ライフサイクル管理の使用について
Oracle Database Vaultのレルムおよびコマンド・ルールで保護されたオブジェクトに対して情報ライフサイクル管理(ILM)操作を実行する役割を担うユーザーに認可を付与できます。
ユーザーがDatabase Vault対応データベースでのILM操作のために次のSQL文を実行できるようにするには、まずユーザーに認可を与える必要があります。
-
ALTER TABLE
-
ILM
-
FLASHBACK ARCHIVE
-
NO FLASHBACK ARCHIVE
-
-
ALTER TABLESPACE
-
FLASHBACK MODE
-
13.6 Oracle Database Vaultでのプリプロセッサ・プログラムの実行
外部表からプリプロセッサ・プログラムを実行するユーザーには、Oracle Database Vault固有の認可が必要です。
- Oracle Database Vaultでのプリプロセッサ・プログラムの実行について
ユーザーが外部表からプリプロセッサ・プログラムを実行するDatabase Vaultの認可を付与したり、取り消すことができます。 - ユーザーに対するプリプロセッサ・プログラム実行の認可
DBMS_MACADM.AUTHORIZE_PREPROCESSOR
プロシージャは、外部表からプリプロセッサ・プログラムを実行する認可をユーザーに付与します。 - ユーザーからのプリプロセッサ実行認可の取消し
DBMS_MACADM.UNAUTHORIZE_PREPROCESSOR
プロシージャは、ユーザーから認可を取り消して、Oracle Database Vault環境でユーザーが外部表からプリプロセッサ・プログラムを実行できないようにします。
13.6.1 Oracle Database Vaultでのプリプロセッサ・プログラムの実行について
ユーザーが外部表からプリプロセッサ・プログラムを実行するDatabase Vaultの認可を付与したり、取り消すことができます。
13.6.2 ユーザーへのプリプロセッサ・プログラム実行の認可
DBMS_MACADM.AUTHORIZE_PREPROCESSOR
プロシージャは、外部表からプリプロセッサ・プログラムを実行する認可をユーザーに付与します。
13.7 Oracle Recovery ManagerとOracle Database Vault
Oracle Database Vault環境ではRecovery Manager(RMAN)を使用できます。
Oracle Database VaultでRMANを使用する場合の機能は、標準のOracle Database環境での機能とほぼ同じです。ただし、エクスポート操作を試行する場合、RMANのリカバリ表および表パーティション機能は、レルムで保護された表と連携しないことに注意してください。エクスポート操作を実行するには、全表リカバリを実行してから、Database Vault認可ユーザーが実際に保護されている保護表のエクスポートを実行する必要があります。
表をリカバリしようとしたときにRMANの表および表パーティション・リカバリ機能とレルム保護された表が連携しないことに注意してください。その表をリカバリするには、データベース全体のリカバリを実行してから、Database Vault認可ユーザーが、レルムで保護された表をエクスポートし既存のデータベースにインポートする必要があります。
13.8 Oracle Database VaultでOracle Streamsを使用するための権限
Oracle Database Vault環境でOracle Streamsを使用する場合、適切な権限が必要です。
必要な権限は、次のとおりです。
-
Oracle Streams取得プロセスを構成するには、
DV_STREAMS_ADMIN
ロールが付与されている必要があります。 -
レルムで保護された表に変更を適用するには、そのレルムへのアクセスが認可されている必要があります。たとえば:
EXEC DBMS_MACADM.ADD_AUTH_TO_REALM('realm_name','username');
13.9 Oracle Database VaultでXStreamを使用するための権限
Oracle Database Vault環境でOracle Streamsを使用する場合、適切な権限が必要です。
これらの権限は次のとおりです。
-
XStreamを構成するには、
DV_XSTREAM_ADMIN
ロールが付与されている必要があります。 -
レルムで保護された表に変更を適用するには、そのレルムへのアクセスが認可されている必要があります。たとえば:
EXEC DBMS_MACADM.ADD_AUTH_TO_REALM('realm_name','username');
13.10 Oracle Database VaultでOracle GoldenGateを使用するための権限
Oracle Database Vault環境でOracle GoldenGateを使用する場合、適切な権限が必要です。
これらの権限は次のとおりです。
-
Oracle GoldenGateを構成するには、ユーザーに
DV_GOLDENGATE_ADMIN
ロールが付与されている必要があります。 -
ユーザーがOracle GoldenGateの
TRANLOGOPTIONS DBLOGREADER
メソッドを使用してREDOログにアクセスする必要がある場合は、ユーザーにDV_GOLDENGATE_REDO_ACCESS
ロールが付与されている必要があります。たとえば、
DV_GOLDENGATE_ADMIN
ロールとDV_GOLDENGATE_REDO_ACCESS
ロールをgg_admin
というユーザーに付与するには、次のようにします。GRANT DV_GOLDENGATE_ADMIN, DV_GOLDENGATE_REDO_ACCESS TO gg_admin;
-
ユーザーに
DV_ACCTMGR
ロールが付与されていないと、レプリケートされた側でこのユーザーがユーザーを作成することはできません。 -
ユーザーは、手続き型レプリケーションを実行する前に、トリガーなしモードで抽出操作を実行する必要があります。
-
レルムで保護された表に変更を適用するには、そのレルムへのアクセスが認可されている必要があります。たとえば:
EXEC DBMS_MACADM.ADD_AUTH_TO_REALM('realm_name','username');
-
SYS
ユーザーは、次のように、SYSTEM
スキーマでデータ定義言語(DDL)を実行する認可を与えられている必要があります。EXECUTE DVSYS.DBMS_MACADM.AUTHORIZE_DDL('SYS', 'SYSTEM');
-
ユーザーは、Oracleデフォルト・コンポーネント保護レルムへの認可を与えられている必要があります。たとえば、このレルム認可を
gg_admin
というユーザーに与えるには、次のようにします。BEGIN DVSYS.DBMS_MACADM.ADD_AUTH_TO_REALM( REALM_NAME => 'Oracle Default Component Protection Realm', GRANTEE => 'gg_admin', AUTH_OPTIONS => 1); END; /
ノート:
Oracle GoldenGateは、SYS
、SYSTEM
およびGoldenGate関連スキーマ内のオブジェクトを問い合せ、更新および管理します。いずれかのスキーマがOracle Database Vaultレルムによって保護されている場合、GoldenGate Extract操作は失敗する可能性があります。Oracle Database Vaultでは、ディクショナリ関連オブジェクトがOracleのデフォルト・コンポーネント保護レルムで保護されます。カスタムOracle Database VaultレルムまたはカスタムOracle Database Vaultコマンド・ルールを使用して、SYS
やSYSTEM
などのデフォルト・スキーマを保護しないことをお薦めします。
13.11 Oracle Database Vault環境でのデータ・マスキングの使用
Oracle Database Vault環境でデータ・マスキングを実行するには、正しい認可が必要です。
- Oracle Database Vaultが有効なデータベースでのデータ・マスキングについて
Oracle Database Vaultが有効なデータベースでは、Database Vaultの認可を受けたユーザーのみがDatabase Vaultで保護されたデータベース・オブジェクトのデータをマスクできます。 - データ・ディクショナリ・レルム認可へのデータ・マスキング・ユーザーの追加
データ・マスキング・ユーザーをOracleデフォルト・コンポーネント保護レルムに追加するとデータ・ディクショナリ・レルム認可を付与できます。 - マスクする表またはスキーマへのアクセス権のユーザーへの付与
マスクする表またはスキーマへのアクセス権をユーザーに付与するには、適切なレルムに対してユーザーを認可する必要があります。 - データ・マスキングの権限を制御するコマンド・ルールの作成
Oracle Database Vault環境でデータ・マスキングを使用するには、表、パッケージおよびトリガーを管理する権限が必要です。
13.11.1 Oracle Database Vaultが有効なデータベースでのデータ・マスキングについて
Oracle Database Vaultが有効なデータベースでは、Database Vaultの認可を受けたユーザーのみがDatabase Vaultで保護されたデータベース・オブジェクトのデータをマスクできます。
Database Vault以外の環境では、SELECT_CATALOG_ROLE
およびDBA
ロールを付与されたユーザーがデータ・マスキングを行えます。ただし、Database Vaultを使用する場合、ユーザーに追加の権限が必要です。この項では、ユーザーがDatabase Vaultで保護されたオブジェクトのデータをマスクできるようにするために使用できる3つの方法について説明します。
ユーザーに適切な権限がない場合、マスキング定義の作成時またはジョブの実行時に次のエラーが発生します。
ORA-47400: Command Rule violation for string on string ORA-47401: Realm violation for string on string. ORA-47408: Realm violation for the EXECUTE command ORA-47409: Command Rule violation for the EXECUTE command ORA-01301: insufficient privileges
13.11.2 データ・ディクショナリ・レルム認可へのデータ・マスキング・ユーザーの追加
データ・マスキング・ユーザーをOracleデフォルト・コンポーネント保護レルムに追加するとデータ・ディクショナリ・レルム認可を付与できます。
Oracleデータ・ディクショナリでは、SYS
およびSYSTEM
などのOracle Databaseカタログ・スキーマへのアクセスが制御されます。(これらのスキーマをすべて示すリストについては、「デフォルトのレルム」を参照)。システム権限およびデータベース管理者ロールを付与する機能も制御されます。ユーザーをOracleデフォルト・コンポーネント保護レルムに追加する場合、これらのユーザーに、Oracleデータ・ディクショナリに関連付けられている権限がすでにあれば、これらのユーザーはDatabase Vault環境で同じ権限を持ちます。したがって、ユーザーをこのレルムに追加する場合、このユーザーが信頼できるユーザーであることを確認します。
-
Oracleデフォルト・コンポーネント保護レルムにユーザーを追加するには、
DBMS_MACADM.ADD_AUTH_TO_REALM
プロシージャを使用します。
たとえば:
BEGIN DBMS_MACADM.ADD_AUTH_TO_REALM( realm_name => 'Oracle Default Component Protection Realm', grantee => 'DBA_JSMITH', auth_options => DBMS_MACUTL.G_REALM_AUTH_PARTICIPANT); END; /
13.11.3 マスクする表またはスキーマへのアクセス権のユーザーへの付与
マスクする表またはスキーマへのアクセス権をユーザーに付与するには、適切なレルムに対してユーザーを認可する必要があります。
データ・マスクする表または表のスキーマがレルム内にある場合、データ・マスキングを行うユーザーを参加者または所有者としてレルム認可に追加する必要があります。表またはスキーマに、他のレルムで保護された表内にある依存オブジェクトがある場合、それらのレルムに対する参加者または所有者認可もユーザーに付与する必要があります。
-
データ・マスクするオブジェクトを保護するレルムに対して、データ・マスキング・ユーザーを認可するには、
DBMS_MACADM.ADD_AUTH_TO_REALM
プロシージャを使用します。
次の例では、ユーザーDBA_JSMITH
に、Business Apps Realmと呼ばれるレルムで保護されたHR.EMPLOYEES
表に対する認可を付与する方法を示します。
BEGIN DBMS_MACADM.ADD_AUTH_TO_REALM( realm_name => 'Business Apps Realm', grantee => 'DBA_JSMITH', auth_options => DBMS_MACUTL.G_REALM_AUTH_PARTICIPANT; END; /
13.11.4 データ・マスキングの権限を制御するコマンド・ルールの作成
Oracle Database Vault環境でデータ・マスキングを使用するには、表、パッケージおよびトリガーを管理する権限が必要です。
データ・マスキングを行うには、ユーザーは、マスキング・オブジェクトに対するCREATE TABLE
、SELECT TABLE
、ALTER TABLE
およびDROP TABLE
権限を持っている必要があります。作成する依存オブジェクトがある場合は、CREATE PACKAGE
、CREATE TRIGGER
などの適切な権限を持っている必要があります。
データ・マスキングの権限を粒度レベルで制御するためのコマンド・ルールを作成できます。これを行うには、データ・マスクする必要のあるオブジェクトへのユーザー・アクセスを禁止または許可するコマンド・ルールを作成します。たとえば、ユーザーがデータ・マスキングを行うユーザーのリスト内にあるかどうかをチェックするAllow Data Maskingと呼ばれるコマンド・ルールを作成できます。ログインするユーザーがこれらのユーザーのいずれかの場合、コマンド・ルールはtrueと評価され、ユーザーは、保護されたオブジェクトに対してデータ・マスクを作成することが許可されます。
データ・マスキング権限を制御するコマンド・ルールを作成するには:
13.12 スタンドアロンのOracle DatabaseをPDBに変換してCDBにプラグイン
リリース12c以降のスタンドアロンのOracle DatabaseはPDBに変換可能で、さらにそのPDBはCDBにプラグインできます。
13.13 Oracle Database Vault環境でのORADEBUGユーティリティの使用
ORADEBUG
ユーティリティは、主にOracleサポートがOracle Databaseで生じる問題を診断する場合に使用します。
ORADEBUG
ユーティリティを実行できるかどうかを制御できます。従来型の監査環境では、AUDIT_SYS_OPERATIONS
初期化パラメータをTRUE
に設定することで、ORADEBUG
の使用を監査できます。統合監査環境では、ORADBUG
コマンドが強制的に監査されます。この制御は、特権OSユーザー(Oracleサーバー・プロセスと同じOSユーザーIDを持つOSユーザー)には適用されません。このようなユーザーは他の手段(たとえば、デバッガ)を使用してOracleプロセスを完全に制御および調査できるため、この例外が発生します。