リソース・プリンシパル

DBシステムは、リソース・プリンシパルを使用して、他のOracle Cloud Infrastructureリソースを認証し、これにアクセスできます。リソース・プリンシパルを使用するには、Oracle Cloud Infrastructureポリシー、およびプリンシパルがOracle Cloud Infrastructureリソースにアクセスできる動的グループを定義する必要があります。

リソース・プリンシパルは、次のMySQL HeatWave Service機能で使用されます:

  • 独自の証明書の持込み: DBシステムで、Oracle Cloud Infrastructure Certificates Serviceで定義された証明書を読み取ることができます。
  • HeatWave Lakehouse: DBシステムがオブジェクト・ストレージからデータを読み取ることができます。

リソース・プリンシパルには、次の2つのコンポーネントがあります。

動的グループ

動的グループを使用すると、ユーザー・グループと同様に、MySQL HeatWave Service DBシステムをプリンシパル・アクターとしてグループ化できます。

その後、ポリシーを作成して、動的グループのDBシステムが証明書やオブジェクト・ストレージなどのOracle Cloud Infrastructureサービスに対してAPIコールを実行できるようにします。グループ内のメンバーシップは、一致ルールと呼ばれる、ユーザーが定義する基準のセットによって決定されます。

次の例は、定義されたコンパートメント内のすべてのDBシステムを含む一致ルールを示しています:
"ALL{resource.type='mysqldbsystem', resource.compartment.id = 'ocid1.compartment.oc1..alphanumericString'}"

詳細については、Writing Matching Rules to Define Dynamic Groupsを参照してください。

動的グループには、名前、説明および一致ルールが必要です。「動的グループの作成」を参照してください。

ポリシー

ポリシーは、グループまたは動的グループが実行できる操作と実行できない操作を定義します。

証明書を取得するためのポリシーの定義

DBシステムが証明書サービスから証明書にアクセスするには、動的グループが証明書を読み取ることを許可するポリシーを定義する必要があります。

たとえば、次のポリシーは、動的グループMYSQL_DGに、コンパートメントC8のセキュリティ証明書を読み取ることを付与します:
Allow dynamic-group MYSQL_DG to read leaf-certificate-family in compartment C8

HeatWaveレイクハウスのポリシーの定義

HeatWaveレイクハウスがオブジェクト・ストレージにアクセスするには、動的グループがバケットとそのコンテンツにアクセスできるようにするポリシーを定義する必要があります。

たとえば、次のポリシーは、動的グループMYSQL_DGに、コンパートメントC8内のバケットに含まれるバケットおよびオブジェクトへの読取り専用アクセス権を付与します:
Allow dynamic-group MYSQL_DG to read buckets in compartment C8
Allow dynamic-group MYSQL_DG to read objects in compartment C8
詳細は、動的グループに対するポリシーの作成を参照してください。