Oracle Database接続の場合

データベース・ツールのポリシーの例

データベース・ツールを使用できる5つの異なるペルソナを次に示します。各ペルソナは、次の表に示すように、付随するOracle Cloud Infrastructureサービスに異なるレベルの管理アクセス権を持つことができます:

表7-1サンプル・ポリシー

ペルソナ 仮想ネットワーク・ファミリ データベースまたはAutonomous Databaseファミリ ボールト キー シークレット・ファミリ データベース・ツール・ファミリ データベース・ツール接続
データベース・ツール管理者 管理 管理 管理 管理 管理 管理 --
データベース・ツール・マネージャ 管理 読取り 使用 使用 管理 管理 --
データベース・ツール接続マネージャ 使用 読取り 使用 使用 管理 使用 管理
認証済プリンシパル・ユーザーとのデータベース・ツール接続 -- 読取り -- -- 読取り 読取り 使用
リソース・プリンシパル・ランタイム・アイデンティティを使用したデータベース・ツール接続 -- 読取り -- -- -- 読取り 使用

データベース・ツール管理者

データベース・ツール管理者は、サービスのすべての側面を管理できます。次のポリシーは、特定のコンパートメント内のネットワーキング、ボールト、キー、シークレット、データベースおよびデータベース・ツールの管理に必要な権限を付与します。

<group_name>および<compartment_name>プレースホルダを独自の値に置き換えます。

表7-2データベース・ツール管理者ポリシー

ポリシー アクセス・レベル
allow group <group_name> to manage virtual-network-family
 in compartment <compartment_name>
仮想クラウド・ネットワーク(VCN)、サブネット、仮想ネットワーク・インタフェース・カード、ネットワーク・セキュリティ・グループを管理する
allow group <group_name> to manage database-family 
in compartment <compartment_name>
Database Cloud Service (仮想マシンおよびベア・メタルDBシステム、Exadata Cloud Service VMクラスタ).を管理する
allow group <group_name> to manage autonomous-database-family
 in compartment <compartment_name>
共有と専用の両方のExadataインフラストラクチャでAutonomous Databaseを読み取る
allow group <group_name> to manage vaults 
in compartment <compartment_name>
ボルトを管理する
allow group <group_name> to manage keys 
in compartment <compartment_name>
キーを管理する
allow group <group_name> to manage secret-family 
in compartment <compartment_name>
秘密を管理する
allow group <group_name> to manage database-tools-family 
in compartment <compartment_name>
データベース・ツールを管理する

データベース・ツール・マネージャ

データベース・ツール・マネージャは、ネットワーキング(プライベート・エンドポイントを含む)、シークレットおよびデータベース・ツール接続を管理できますが、Oracle Cloud Infrastructureボールトおよび データベース・サービスへのアクセスは制限されています。

<group_name>および<compartment_name>を独自の値に置き換えます。

表7-3データベース・ツール・マネージャ・ポリシー

ポリシー アクセス・レベル
allow group <group_name> to manage virtual-network-family 
in compartment <compartment_name>
仮想クラウド・ネットワーク(VCN)、サブネット、仮想ネットワーク・インタフェース・カードおよびネットワーク・セキュリティ・グループを使用する
allow group <group_name> to read database-family 
in compartment <compartment_name>
Database Cloud Service (仮想マシンおよびベア・メタルDBシステム、Exadata Cloud Service VMクラスタ).を読み取る
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
共有と専用の両方のExadataインフラストラクチャでAutonomous Databaseを読み取る
allow group <group_name> to use vaults 
in compartment <compartment_name>
ボールトを使用する(シークレットの作成など)
allow group <group_name> to use keys 
in compartment <compartment_name>
キーを使用する(シークレットの作成など)
allow group <group_name> to manage secret-family 
in compartment <compartment_name>
秘密を管理する
allow group <group_name> to manage database-tools-family 
in compartment <compartment_name>
データベース・ツールを管理する

データベース・ツール接続マネージャ

データベース・ツール接続マネージャは、データベース・サービスへの接続の作成を管理し、他のサービスに対する読取り専用アクセス権を持ちます。

<group_name>および<compartment_name>を独自の値に置き換えます。

ポリシーでwhere句を使用して接続OCIDに基づいてアクセスを制限する場合は、次を使用します:

where target.resource.id = <connection-ocid>

データベース・ツール接続でSQLワークシートを使用するには、コンパートメント内のすべてのデータベース・ツール接続に対するinspect権限をユーザーに付与する必要があります。この権限がない場合、ユーザーは「接続」ページにデータベース・ツール接続を表示したり、「SQLワークシート」ドロップダウン・リストで接続を選択することはできません。たとえば、次のポリシー・ステートメントは、指定されたグループを、指定されたデータベース・ツール接続OCIDのみをuseに制限します。

allow group <group-name> to use database-tools-connections in compartment <compartment-name> where all { target.resource.id = '<connection-ocid>' }

このようなシナリオでも、指定したグループがデータベース・ツール接続をリストできるように、次の無条件ポリシー・ステートメントを指定する必要があります。

allow group <group-name> to inspect database-tools-connections in compartment <compartment-name>

この無条件のinspect権限により、ユーザーは、コンパートメント内のすべてのデータベース・ツール接続(useアクセス権がない接続を含む)を表示できます。すべての接続を公開せずに異なるグループの接続セットへのアクセス権を付与する必要がある場合、Oracleでは、データベース・ツール接続のセットごとに個別のコンパートメントを作成してから、必要に応じてコンパートメント・レベルでinspectおよびuse権限を付与することをお薦めします。

表7-4データベース・ツール接続マネージャ・ポリシー

ポリシー アクセス・レベル
allow group <group_name> to use virtual-network-family 
in compartment <compartment_name>
仮想クラウド・ネットワーク(VCN)、サブネット、仮想ネットワーク・インタフェース・カードおよびネットワーク・セキュリティ・グループを使用する
allow group <group_name> to read database-family 
in compartment <compartment_name>
Database Cloud Service (仮想マシンおよびベア・メタルDBシステム、Exadata Cloud Service VMクラスタ).を読み取る
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
共有と専用の両方のExadataインフラストラクチャでAutonomous Databaseを読み取る
allow group <group_name> to use vaults 
in compartment <compartment_name>
ボールトを使用する(シークレットの作成など)
allow group <group_name> to use keys 
in compartment <compartment_name>
キーを使用する(シークレットの作成など)
allow group <group_name> to manage secret-family 
in compartment <compartment_name>
秘密を管理する
allow group <group_name> to use database-tools-family 
in compartment <compartment_name>
データベース・ツールのプライベート・エンドポイント、エンドポイント・サービスを使用する
allow group <group_name> to manage database-tools-connections 
in compartment <compartment_name>
データベース・ツール接続を管理する

認証済プリンシパル・ランタイム・アイデンティティを使用したデータベース・ツール接続

これらのポリシーは、ランタイム・アイデンティティがAUTHENTICATED_PRINCIPALを使用するデータベース・ツール接続に適用されます。

ユーザーがシークレットを読み取れないようにするには、かわりにリソース・プリンシパルとのデータベース・ツール接続を使用します。リソース・プリンシパル・ランタイム・アイデンティティを使用したデータベース・ツール接続を参照してください。

次の表に、認証されたプリンシパル・ランタイム・アイデンティティを持つデータベース・ツール接続のポリシーおよび関連するアクセス・レベルを示します。

表7-5認証済プリンシパル・ランタイム・アイデンティティを使用したデータベース・ツール接続のポリシー

ポリシー アクセス・レベル
allow group <group_name> to read database-family 
in compartment <compartment_name>
Database Cloud Service (仮想マシンおよびベア・メタルDBシステム、Exadata Cloud Service VMクラスタ).を読み取る
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
共有と専用の両方のExadataインフラストラクチャでAutonomous Databaseを読み取る
allow group <group_name> to read secret-family 
in compartment <compartment_name>
秘密を読み取る
allow group <group_name> to read database-tools-family 
in compartment <compartment_name>
データベース・ツールのプライベート・エンドポイント、エンドポイント・サービスを読み取る
allow group <group_name> to use database-tools-connections 
in compartment <compartment_name>
データベース・ツール接続を使用する

<group_name>および<compartment_name>は、使用している環境に基づく値に置き換えます。

リソース・プリンシパル・ランタイム・アイデンティティを使用したデータベース・ツール接続

これらのポリシーは、ランタイム・アイデンティティがRESOURCE_PRINCIPALを使用するデータベース・ツール接続に適用されます。

ユーザーがシークレットを読み取らないようにするには、データベース・ツール接続とリソース・プリンシパル・ランタイム・アイデンティティを使用します。リソース・プリンシパル・ランタイム・アイデンティティを持つデータベース・ツール接続のユーザーは、OCIデータベース・ツールで作成された事前作成済のデータベース接続のみを使用でき、ユーザーはシークレット値を表示できません。リソース・プリンシパルを参照してください。

次の表に、リソース・プリンシパルとのデータベース・ツール接続用の動的グループおよび含まれるリソースを示します。

表7-6リソース・プリンシパルを使用したデータベース・ツール接続の動的グループ

動的グループ照合ルール 次を含む
ALL {resource.type='databasetoolsconnection', resource.compartment.id =
    <compartment_name>}
コンパートメントで見つかったすべてのデータベース・ツール接続が含まれます。
All {resource.id = <connection_ocid>, resource.compartment.id =
    <compartment_name>}
指定されたデータベース・ツール接続のみが含まれます。

<group_name><compartment_name><connection_ocid>および<dynamic_group_name>を、環境に基づいた値に置き換えます。

次の表に、リソース・プリンシパル・ランタイム・アイデンティティを持つデータベース・ツール接続のポリシーおよび関連するアクセス・レベルを示します。

表7-7リソース・プリンシパル・ランタイム・アイデンティティを使用したデータベース・ツール接続のポリシー

ポリシー アクセス・レベル
allow group <group_name> to read database-family 
in compartment <compartment_name>
Database Cloud Service (仮想マシンおよびベア・メタルDBシステム、Exadata Cloud Service VMクラスタ).を読み取る
allow group <group_name> to read autonomous-database-family 
in compartment <compartment_name>
共有と専用の両方のExadataインフラストラクチャでAutonomous Databaseを読み取る
allow group <group_name> to read database-tools-family in compartment <compartment_name>
データベース・ツール・プライベート・エンドポイント、接続およびエンドポイント・サービスを読み取るため。
allow group <group_name> to use database-tools-connections in compartment <compartment_name>
データベース・ツールの接続を使用する。
allow group <group_name> to read secret-family 
in compartment <compartment_name>
動的グループ・メンバーにシークレットの読取りへのアクセス権を付与するには

<group_name><compartment_name><connection_ocid>および<dynamic_group_name>を、環境に基づいた値に置き換えます。