Resource Principals
DB-Systeme können Resource Principals zur Authentifizierung und zum Zugriff auf andere Oracle Cloud Infrastructure-Ressourcen verwenden. Um Resource Principals verwenden zu können, müssen Sie oder der Mandantenadministrator die Oracle Cloud Infrastructure-Policys und dynamischen Gruppen definieren, mit denen Principals auf Oracle Cloud Infrastructure-Ressourcen zugreifen können.
Resource Principal wird in den folgenden HeatWave-Servicefeatures verwendet:
- Eigenes Zertifikat bereithalten: Ermöglicht DB-Systemen das Lesen der in Oracle Cloud Infrastructure (OCI) Certificates Service definierten Zertifikate.
- Netzwerksicherheitsgruppen: Damit können DB-Systeme oder Lesereplikate Netzwerksicherheitsregeln verwenden, die in mindestens einer Netzwerksicherheitsgruppe angegeben sind.
- HeatWave Lakehouse: Ermöglicht DB-Systemen das Lesen von Daten aus Object Storage.
- Abfrageergebnisse in Object Storage exportieren: Ermöglicht dem HeatWave-Service den Export von Abfrageergebnissen in Object Storage.
- Auf OCI Generative AI Service zugreifen: Ermöglicht HeatWave GenAI die Verwendung aller vortrainierten grundlegenden Modelle, die im OCI Generative AI-Service verfügbar sind.
Resource Principals bestehen aus zwei Komponenten:
Dynamische Gruppen
Mit dynamischen Gruppen können Sie HeatWave-Service-DB-Systeme als Principal-Darsteller gruppieren, ähnlich wie Benutzergruppen.
Sie können dann Policys erstellen, mit denen DB-Systeme in den dynamischen Gruppen API-Aufrufe für Oracle Cloud Infrastructure-Services wie Zertifikate oder Object Storage ausführen können. Die Mitgliedschaft in der Gruppe wird durch eine Gruppe von definierten Kriterien bestimmt, die als Vergleichsregeln bezeichnet werden.
"ALL{resource.type='mysqldbsystem', resource.compartment.id = 'ocid1.compartment.oc1..alphanumericString'}"
Weitere Informationen finden Sie unter Abgleichsregeln zum Definieren dynamischer Gruppen schreiben.
Dynamische Gruppen erfordern einen Namen, eine Beschreibung und eine Übereinstimmungsregel. Siehe Dynamische Gruppen erstellen.
Policys
Policys definieren, was Ihre Gruppen oder dynamischen Gruppen tun können und was nicht.
Policy für Bring Your Own Certificate definieren
Damit DB-Systeme über den Certificates-Service auf Zertifikate zugreifen können, müssen Sie eine Policy definieren, mit der die dynamische Gruppe die Zertifikate lesen kann.
Allow dynamic-group MYSQL_DG to read leaf-certificate-family in compartment C8
Policy für Netzwerksicherheitsgruppen definieren
NETWORK_SECURITY_GROUP_UPDATE_MEMBERS
im Compartment mit den NetzwerksicherheitsgruppenVNIC_CREATE
,VNIC_UPDATE
,VNIC_ASSOCIATE_NETWORK_SECURITY_GROUP
,VNIC_DISASSOCIATE_NETWORK_SECURITY_GROUP
,VNIC_ASSOCIATE_NETWORK_SECURITY_GROUP
im Compartment des Subnetzes des DB-Systems.
Allow dynamic-group MYSQL_DG to {NETWORK_SECURITY_GROUP_UPDATE_MEMBERS}
in compartment C8
Allow dynamic-group MYSQL_DG to {VNIC_CREATE, VNIC_UPDATE, VNIC_ASSOCIATE_NETWORK_SECURITY_GROUP,
VNIC_DISASSOCIATE_NETWORK_SECURITY_GROUP} in compartment C9
Alternativ können Sie die folgenden Policys erstellen, die Principals enthalten, ohne eine dynamische Gruppe zu verwenden:Allow any-user to {NETWORK_SECURITY_GROUP_UPDATE_MEMBERS} in compartment C8 where all
{request.principal.type='mysqldbsystem', request.resource.compartment.id='ocid1.compartment.oc1..alphanumericString'}
Allow any-user to {VNIC_CREATE, VNIC_UPDATE, VNIC_ASSOCIATE_NETWORK_SECURITY_GROUP,
VNIC_DISASSOCIATE_NETWORK_SECURITY_GROUP} in compartment C9 where all
{request.principal.type='mysqldbsystem', request.resource.compartment.id='ocid1.compartment.oc1..alphanumericString'}
Policy für HeatWave Lakehouse definieren
Damit HeatWave Lakehouse auf Object Storage zugreifen kann, müssen Sie eine Policy definieren, mit der die dynamische Gruppe auf Buckets und deren Inhalte zugreifen kann.
Allow dynamic-group MYSQL_DG to read buckets in compartment C8
Allow dynamic-group MYSQL_DG to read objects in compartment C8
Policy zum Exportieren von Abfrageergebnissen in Object Storage definieren
Damit HeatWave Abfrageergebnisse in Object Storage exportieren kann, muss die Policy der dynamischen Gruppe Berechtigungen zum Erstellen und Löschen von Objekten im Bucket erteilen.
Allow dynamic-group MYSQL_DG to read buckets in compartment C8
Allow dynamic-group MYSQL_DG to manage objects in compartment C8 where
any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT',
request.permission='OBJECT_DELETE'}
Sie können die Berechtigungen auf einen bestimmten Bucket beschränken. Die folgende Policy erteilt der dynamischen Gruppe MYSQL_DG Berechtigungen zum Erstellen, Prüfen und Löschen von Objekten im Bucket BucketA in Compartment C8:Allow dynamic-group MYSQL_DG to read buckets in compartment C8
Allow dynamic-group MYSQL_DG to manage objects in compartment C8 where
all {target.bucket.name='BucketA',
any {request.permission='OBJECT_CREATE', request.permission='OBJECT_INSPECT',
request.permission='OBJECT_DELETE'} }
Policy für den Zugriff auf den OCI Generative AI-Service definieren
Damit HeatWave GenAI alle vortrainierten grundlegenden Modelle verwendet, die in OCI Generative AI verfügbar sind, müssen Sie eine Policy definieren, mit der die dynamische Gruppe auf den OCI Generative AI-Service zugreifen kann.
Allow dynamic-group MYSQL_DG to use generative-ai-chat in compartment C8
Allow dynamic-group MYSQL_DG to use generative-ai-text-embedding in compartment C8
Die Nutzung von OCI Generative AI wird im ausgewählten Compartment gemessen und abgerechnet.