クロステナンシ・アソシエーション・ポリシー
組織では、別のテナンシのプライベート・エンドポイントを参照する接続をテナンシに作成したり、別のテナンシの接続で独自のプライベート・エンドポイントを使用することもできます。
IAMグループがこのようなクロス・テナンシ接続を作成できるようにするには、テナンシ管理者が特別な「クロス・テナンシ・アソシエーション」ポリシー・ステートメントを記述する必要があります。これらの文は、通常のクロステナンシ・ポリシー・ステートメントと同様にEndorseおよびAdmit動詞を使用しますが、あるタイプのリソースに対してreadやuseなどのアクションを実行する権限を付与するかわりに、2つのタイプのリソースを相互に関連付けする権限を付与します。
クロステナンシ・アソシエーション文
クロステナンシ・アソシエーション・ポリシー・ステートメントが必要です:
- グループが、接続と同じテナンシにないプライベート・エンドポイントを参照する接続を作成する場合、またはそのような参照を行うために既存の接続を更新する場合。
- 通常必要なクロステナンシ・ポリシー・ステートメントに加えて。たとえば、グループとは異なるテナンシにある場合、グループでプライベート・エンドポイントを使用できるようにするには、クロステナンシ文が必要です。
- 特定のリソース・ペアに対してのみ。データベース・ツールに必要なのは、接続およびプライベート・エンドポイントの場合のみです。これらは、接続やボールト・シークレットなど、相互に参照できるリソースのすべてのペアには必要ありません。
接続が作成されると、それらを使用するためにクロステナンシ・アソシエーション・ポリシーは不要になります。接続の使用および参照されるシークレットの読取り権限を持つユーザーは、接続を使用できます。
次の例では、グループおよび接続を持つテナンシをグループ・テナンシ、およびプライベート・エンドポイントを持つテナンシをリソース・テナンシと呼びます。
これは、クロステナンシ・アソシエーション・ポリシー・ステートメントが必要な構成の例です。接続は、参照するプライベート・エンドポイントとは異なるテナンシで作成されます。

グループ・テナンシにシークレットを含めることも、接続およびプライベート・エンドポイントを切り替えることもできます。接続とプライベート・エンドポイントが同じテナンシ内に一緒に存在する場合、クロステナンシ・アソシエーション・ポリシーは必要ありません。
グループ・テナンシのポリシー・ステートメント
グループ・テナンシ管理者は、次のポリシー・ステートメントを作成します:
- リソース・テナンシの別名を定義します。リソース・テナンシ管理者は、リソース・テナンシのOCIDを指定する必要があります。
- テナンシ内のIAMグループをエンドースして、テナンシまたはコンパートメント内の接続をリソース・テナンシのプライベート・エンドポイントに関連付けます。
リソース・テナンシのリソースにアクセスするためにグループを承認するために必要な通常のクロス・テナンシ・ポリシー・ステートメントを含めることもできます。
次に、IAMグループDatabaseToolsConnectionManagers
を承認して、グループ・テナンシ・コンパートメントConnectionsCompartment
内の接続をResourceTenancy
内のプライベート・エンドポイントに関連付けるポリシー・ステートメントの例を示します。また、グループに対してシークレットの読取りおよびResourceTenancy
のプライベート・エンドポイントの使用が承認されます:
Define tenancy ResourceTenancy as <resource_tenancy_ocid>
Endorse group DatabaseToolsConnectionManagers to associate database-tools-connections in compartment ConnectionsCompartment with database-tools-private-endpoints in tenancy ResourceTenancy
Endorse group DatabaseToolsConnectionManagers to read secret-family in tenancy ResourceTenancy
Endorse group DatabaseToolsConnectionManagers to use database-tools-private-endpoints in tenancy ResourceTenancy
リソース・テナンシのポリシー・ステートメント
リソース・テナンシ管理者は、次のポリシー・ステートメントを作成します:
- グループ・テナンシの別名と、テナンシのリソースにアクセスできるIAMグループの別名を定義します。グループ・テナンシ管理者は、グループ・テナンシおよびグループのOCIDsを指定する必要があります。
- グループを認め、グループ・テナンシ内の接続をテナンシまたはコンパートメント内のプライベート・エンドポイントに関連付けます。
また、グループにテナンシ内のリソースへのアクセスを許可するために必要な通常のクロステナンシ・ポリシー・ステートメントを含めることもできます。
次に、グループ・テナンシのIAMグループDatabaseToolsConnectionManagers
が、GroupTenancy
内の接続をリソース・テナンシ・コンパートメントPrivateEndpointsCompartment
内のプライベート・エンドポイントに関連付けることを許可するポリシー・ステートメントの例を示します。また、グループでシークレットを読み取り、PrivateEndpointsCompartment
でプライベート・エンドポイントを使用することも許可します:
Define tenancy GroupTenancy as <group_tenancy_ocid>
Define group DatabaseToolsConnectionManagers as <database_tools_connection_managers_group_ocid>
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to
associate database-tools-connections in tenancy GroupTenancy with
database-tools-private-endpoints in compartment PrivateEndpointsCompartment
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to read
secret-family in compartment PrivateEndpointsCompartment
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to use
database-tools-private-endpoints in compartment PrivateEndpointsCompartment
3つのテナンシあり
IAMグループは、3番目のテナンシにも配置できます。グループがGroupTenancy
というテナンシにあり、接続がConnectionTenancy
というテナンシにあり、プライベート・エンドポイントがPrivateEndpointsTenancy
というテナンシにあるとします。
3つのテナンシがあるため、3つのクロステナンシ・アソシエーション・ポリシー・ステートメントが必要です。追加のDefine文の他に、GroupTenancy
にはEndorse文が必要で、ConnectionTenancy
およびPrivateEndpointsTenancy
にはそれぞれAdmit文が必要です。
これは、3つのテナンシを含む可能性のある構成の例です。グループ、接続およびプライベート・エンドポイントはすべて個別のテナンシにあります。その他の可能な構成では、他のテナンシの1つまたは4番目のテナンシのシークレットを持つことができますが、接続およびシークレットにはクロステナンシ・アソシエーション・ポリシーは不要です。

次に、テナンシDatabaseToolsConnectionManagers
のIAMグループを承認し、ConnectionTenancy
内の接続をPrivateEndpointTenancy
のプライベート・エンドポイントに関連付けるGroupTenancy
のポリシー・ステートメントの例を示します。また、ConnectionTenancy
で接続を管理し、シークレットを読み取り、PrivateEndpointTenancy
でプライベート・エンドポイントを使用するグループも承認します:
Define tenancy ConnectionTenancy as <connection_tenancy_ocid>
Define tenancy PrivateEndpointTenancy as <private_endpoint_tenancy_ocid>
Endorse group DatabaseToolsConnectionManagers to associate
database-tools-connections in tenancy ConnectionTenancy with
database-tools-private-endpoints in tenancy PrivateEndpointTenancy
Endorse group DatabaseToolsConnectionManagers to manage
database-tools-connections in tenancy ConnectionTenancy
Endorse group DatabaseToolsConnectionManagers to read secret-family
in tenancy PrivateEndpointTenancy
Endorse group DatabaseToolsConnectionManagers to use
database-tools-private-endpoints in tenancy PrivateEndpointTenancy
次に、DatabaseToolsConnectionManagers
をエンドースしてテナンシ内の接続をPrivateEndpointTenancy
内のプライベート・エンドポイントに関連付けるConnectionTenancy
のポリシー・ステートメントの例を示します。また、グループでConnectionsCompartment
というコンパートメント内の接続を管理することも許可されます:
Define tenancy GroupTenancy as <group_tenancy_ocid>
Define tenancy PrivateEndpointTenancy as <private_endpoint_tenancy_ocid>
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to
associate database-tools-connections in tenancy with
database-tools-private-endpoints in tenancy PrivateEndpointTenancy
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to manage
database-tools-connections in compartment ConnectionsCompartment
次に、DatabaseToolsConnectionManagers
をエンドースしてConnectionTenancy
内の接続をテナンシのプライベート・エンドポイントに関連付けるPrivateEndpointTenancy
のポリシー・ステートメントの例を示します。また、グループはシークレットを読み取り、PrivateEndpointsCompartment
というコンパートメントでプライベート・エンドポイントを使用することを許可します:
Define tenancy GroupTenancy as <group_tenancy_ocid>
Define tenancy ConnectionTenancy as <connection_tenancy_ocid>
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to
associate database-tools-connections in tenancy ConnectionTenancy
with database-tools-private-endpoints in tenancy
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to read
secret-family in compartment PrivateEndpointsCompartment
Admit group DatabaseToolsConnectionManagers of tenancy GroupTenancy to use
database-tools-private-endpoints in compartment PrivateEndpointsCompartment