Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen verwenden
Sie können einen Oracle Cloud Infrastructure-Resource Principal mit Autonomous AI Database verwenden. Sie oder Ihr Mandantenadministrator definieren die Oracle Cloud Infrastructure-Policys und eine dynamische Gruppe, mit der Sie mit einem Resource Principal auf Oracle Cloud Infrastructure-Ressourcen zugreifen können. Sie müssen kein Zugangsdatenobjekt erstellen, und Autonomous AI Database erstellt und sichert die Zugangsdaten des Resource Principals, mit denen Sie auf die angegebenen Oracle Cloud Infrastructure-Ressourcen zugreifen.
Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen verwenden
Mit einem Resource Principal können Sie Oracle Cloud Infrastructure-Ressourcen authentifizieren und darauf zugreifen.
Ein Resource Principal besteht aus einem temporären Sessiontoken und sicheren Zugangsdaten, mit denen sich die Datenbank bei anderen Oracle Cloud Infrastructure-Services authentifizieren kann. Wenn Sie einen Resource Principal für den Zugriff auf Services verwenden, ist das mit den Zugangsdaten in der autonomen KI-Datenbank gespeicherte Token nur für die Ressourcen gültig, auf die der dynamischen Gruppe Zugriff erteilt wurde.
Um Resource Principal zu verwenden, definieren Sie oder der Mandantenadministrator die Oracle Cloud Infrastructure-Policys und eine dynamische Gruppe, mit der Sie mit einem Resource Principal auf Oracle Cloud Infrastructure-Ressourcen zugreifen können. Sie müssen kein Zugangsdatenobjekt erstellen, und Autonomous AI Database erstellt und sichert die Zugangsdaten des Resource Principals, mit denen Sie auf die angegebenen Oracle Cloud Infrastructure-Ressourcen zugreifen.
Beispiel: Wenn Sie eine autonome KI-Datenbank verwenden, können Sie mit Oracle Cloud Infrastructure-Ressourcen Folgendes ausführen:
-
Auf Daten von einem Object Storage-Bucket aus zugreifen, einige Vorgänge an Daten durchführen und anschließend die geänderten Daten wieder in den Object Storage-Bucket schreiben
-
Greifen Sie auf Ihre Vaults, Schlüssel oder Secrets zu.
-
Arbeitsanforderungen auflisten oder Arbeitsanforderungsfehler auflisten
Wenn Sie mit der Datenbank arbeiten, authentifizieren Sie sich und greifen als Datenbankbenutzer auf die Datenbank zu. Ein Autonomous AI Database-Benutzer hat keine Oracle Cloud Infrastructure Identity and Access Management-(IAM-)Identität. Daher können Sie als Autonomous AI Database-Benutzer Ihre Datenbankzugangsdaten nicht für den Zugriff auf Oracle Cloud Infrastructure-Services verwenden. Ohne Resource Principal müssen Sie Zugangsdaten für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen abrufen und ein Zugangsdatenobjekt für den Zugriff auf eine Ressource aus der autonomen KI-Datenbank erstellen.
Mit einem Resource Principal können Ressourcen autorisiert werden, Aktionen in Oracle Cloud Infrastructure-Services auszuführen. Jede Ressource hat ihre eigene Identität und authentifiziert die Zertifikate, die ihr hinzugefügt werden. Diese Zertifikate werden automatisch erstellt, Ressourcen zugewiesen und rotiert, sodass Sie keine eigenen Zugangsdaten für den Zugriff auf die Ressource erstellen und verwalten müssen.
Mit Autonomous AI Database können Sie einen Resource Principal für die Authentifizierung bei Oracle Cloud Infrastructure-APIs über die folgenden Schnittstellen verwenden:
-
DBMS_CLOUD-Prozeduren und -Funktionen, die ein Zugangsdatenargument verwenden -
Oracle Cloud Infrastructure-PL/SQL-SDK-APIs
Bei der Authentifizierung mit einem Resource Principal bietet Autonomous AI Database eine sichere Methode für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen.
Zum Einrichten eines Resource Principals in einer autonomen KI-Datenbank sind mehrere Schritte erforderlich:
-
Sie müssen eine Definition der Oracle Cloud Infrastructure Infrastructure Identity and Access Management-(IAM-)Policys erstellen. Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung von Resource Principal mit einer autonomen KI-Datenbank ausführen.
-
Sie müssen den Resource Principal für den ADMIN-Benutzer aktivieren und optional den Resource Principal für einen Datenbankbenutzer aktivieren. Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen aktivieren.
Wenn Sie sich mit einem Resource Principal authentifizieren, müssen Sie keine Zugangsdaten für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen erstellen und verwalten. Die autonome KI-Datenbank stellt Ihnen den Resource Principal zur Verfügung und sichert den Resource Principal für Sie.
Voraussetzungsprüfungen für die Verwendung von Resource Principals mit Autonomous AI Database ausführen
Bevor Sie eine Oracle Cloud Infrastructure-Ressource mit einem Resource Principal aufrufen, muss ein Oracle Cloud Infrastructure-Mandantenadministrator Oracle Cloud Infrastructure-Policys, dynamische Gruppen und Regeln erstellen, mit denen die Resource Principal-Berechtigungen definiert werden.
Führen Sie die folgenden Schritte aus, bevor Sie einen Resource Principal mit einer autonomen KI-Datenbank verwenden:
-
Erstellen Sie eine dynamische Oracle Cloud Infrastructure-Gruppe.
-
Klicken Sie in der Oracle Cloud Infrastructure-Konsole auf Identität und Sicherheit und anschließend auf Dynamische Gruppen.
-
Klicken Sie auf Dynamische Gruppe erstellen, und geben Sie einen Namen, eine Beschreibung und eine Regel ein, oder fügen Sie mit Rule Builder eine Regel hinzu.
-
Klicken Sie auf Erstellen.
Ressourcen, die den Regelkriterien entsprechen, sind Mitglieder der dynamischen Gruppe. Wenn Sie eine Regel für eine dynamische Gruppe definieren, überlegen Sie, welcher Ressource Zugriff auf andere Ressourcen erteilt wird.
Beispiel: Betrachten Sie die folgenden Beispiele:
-
Erlauben Sie einer bestimmten autonomen KI-Datenbankinstanz den Zugriff auf eine Ressource.
Die autonome KI-Datenbank wird im Parameter
resource.idmit einer OCID angegeben:resource.id = 'your_Autonomous_Database_instance_OCID'Hinweis
Hinweis: Unter Identitätsdomain-URL suchen wird der Identitätsdomainname gesucht. Wenn mehrere Identitätsdomains konfiguriert sind, geben Sie die Domain an, in der sich die autonome KI-Datenbank befindet oder wo sie erstellt wurde.Sie müssen einen Domainnamen hinzufügen, wenn der Mandant eine Identitätsdomain verwendet. Beispiel:
resource.id = 'identity_domain_name/your_Autonomous_Database_instance_OCID' -
Alle autonomen KI-Datenbanken in einem Compartment zulassen.
Die autonomen KI-Datenbanken werden im Parameter
resource.typeangegeben, und das Compartment wird durch eine angegebene OCID im Parameterresource.compartment.ididentifiziert:ALL {resource.type = 'autonomousdatabase', resource.compartment.id = ' your_Compartment_OCID'} -
Alle Ressourcen im Compartment zulassen
Der durch die OCID angegebene Ressourcentyp, der im Parameter
resource.compartment.idangegeben ist:ALL {resource.compartment.id='*your_Compartment_OCID*'}
Weitere Informationen zum Erstellen einer dynamischen Gruppe und zum Erstellen von Regeln zum Hinzufügen von Ressourcen zur Gruppe finden Sie unter Dynamische Gruppen verwalten.
-
-
Schreiben Sie Policy-Anweisungen für die dynamische Gruppe, damit der Zugriff auf Oracle Cloud Infrastructure-Ressourcen möglich ist.
-
Klicken Sie in der Oracle Cloud Infrastructure-Konsole auf Identität und Sicherheit und anschließend auf Policys.
-
Um Policys für eine dynamische Gruppe zu schreiben, klicken Sie auf Policy erstellen, und geben Sie einen Namen und eine Beschreibung ein.
-
Erstellen Sie mit Policy Builder eine Policy.
Beispiel: So erstellen Sie eine Policy, um den Zugriff auf den Oracle Cloud Infrastructure-Objektspeicher zur Verwaltung von Buckets und Objekten im Objektspeicher in einem Mandanten zuzulassen:
Allow dynamic-group Example5 to manage buckets in tenancy Allow dynamic-group Example5 to manage objects in tenancySie müssen einen Domainnamen hinzufügen, wenn der Mandant eine Identitätsdomain verwendet. Beispiel:
Allow dynamic-group *identity_domain_name*/Example5 to manage buckets in tenancy Allow dynamic-group *identity_domain_name*/Example5 to manage objects in tenancy -
Klicken Sie auf Erstellen.
-
Hinweis
Hinweis: Das Resource-Principal-Token wird zwei Stunden lang gecacht. Wenn Sie also die Policy oder die dynamische Gruppe ändern, müssen Sie zwei Stunden warten, um die Auswirkungen Ihrer Änderungen zu sehen.
Weitere Informationen zu Policys finden Sie unter Funktionsweise von Policys und Policys verwalten.
Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen aktivieren
Führen Sie die folgenden Schritte aus, um den Resource Principal in einer autonomen KI-Datenbank zu aktivieren. Dadurch kann die Datenbank OCI-Ressourcen sicher authentifizieren und darauf zugreifen.
Konfigurieren Sie als Voraussetzung dynamische Gruppen und Policys. Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung von Resource Principal mit einer autonomen KI-Datenbank ausführen.
So aktivieren Sie einen Resource Principal in einer autonomen KI-Datenbank:
-
Aktivieren Sie als ADMIN-Benutzer den Resource Principal für die Instanz der autonomen KI-Datenbank.
Beispiel:
EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL();Weitere Informationen finden Sie unter ENABLE_RESOURCE_PRINCIPAL - Prozedur.
Dadurch werden die Zugangsdaten
OCI$RESOURCE_PRINCIPALerstellt. -
(Optional) Dieser Schritt ist nur erforderlich, wenn Sie einem anderen Datenbankbenutzer als dem ADMIN-Benutzer Zugriff auf die Zugangsdaten des Resource Principals erteilen möchten. Aktivieren Sie als ADMIN-Benutzer den Resource Principal für einen angegebenen Datenbankbenutzer.
Beispiel:
EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(username => 'adb_user');Dadurch wird dem Benutzer
adb_userZugriff auf die ZugangsdatenOCI$RESOURCE_PRINCIPALerteilt.Wenn der angegebene Benutzer über Berechtigungen zum Aktivieren des Resource Principals für andere Benutzer verfügen soll, setzen Sie den Parameter
grant_optionaufTRUE.Beispiel:
BEGIN DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL( username => 'adb_user', grant_option => TRUE); END; /Nachdem Sie diesen Befehl ausgeführt haben, kann
adb_userden Resource Principal für einen anderen Benutzer aktivieren. Beispiel: Wenn Sie eine Verbindung alsadb_userherstellen, können Sie den folgenden Befehl ausführen:EXEC DBMS_CLOUD_ADMIN.ENABLE_RESOURCE_PRINCIPAL(username => 'adb_user2');Weitere Informationen finden Sie unter ENABLE_RESOURCE_PRINCIPAL - Prozedur.
-
Prüfen Sie, ob die Zugangsdaten des Resource Principals aktiviert sind.
Beispiel: Wenn der ADMIN-Benutzer die Ansicht
DBA_CREDENTIALSabfragt:SELECT owner, credential_name FROM dba_credentials WHERE credential_name = 'OCI$RESOURCE_PRINCIPAL' AND owner = 'ADMIN'; OWNER CREDENTIAL_NAME----- ---------------------- ADMIN OCI$RESOURCE_PRINCIPALBeispiel: Fragen Sie als Nicht-ADMIN-Benutzer die View
ALL_TAB_PRIVSab:SELECT grantee, table_name, grantor FROM ALL_TAB_PRIVS WHERE grantee = 'ADB_USER' AND table_name = 'OCI$RESOURCE_PRINCIPAL' AND table_schema = 'ADMIN';GRANTEE TABLE_NAME GRANTOR --------- ----------------------- ------------- ADB_USER OCI$RESOURCE_PRINCIPAL ADMIN
Die Aktivierung des Resource Principals in einer autonomen AI-Datenbankinstanz ist ein einmaliger Vorgang. Sie müssen den Resource Principal nicht erneut aktivieren, es sei denn, Sie führen DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL aus, um den Resource Principal zu deaktivieren.
Resource Principal in autonomer KI-Datenbank deaktivieren
Zeigt die Schritte zum Deaktivieren des Resource Principals für alle Benutzer der autonomen KI-Datenbank oder für einen angegebenen Benutzer an.
-
Um den Resource Principal für alle Benutzer als ADMIN-Benutzer zu deaktivieren, führen Sie den folgenden Befehl aus:
EXEC DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL();Dadurch werden die Zugangsdaten
OCI$RESOURCE_PRINCIPALentfernt. -
Prüfen Sie, ob die Zugangsdaten des Resource Principals deaktiviert sind.
Beispiel:
SELECT owner, credential_name FROM dba_credentials WHERE credential_name = 'OCI$RESOURCE_PRINCIPAL' AND owner = 'ADMIN';No rows selected
Um den Zugriff auf die Zugangsdaten des Resource Principals für einen angegebenen Datenbankbenutzer zu entfernen, nehmen Sie den Parameter username auf. Dadurch wird dem angegebenen Benutzer der Zugriff auf die Zugangsdaten OCI$RESOURCE_PRINCIPAL verweigert.
Beispiel:
EXEC DBMS_CLOUD_ADMIN.DISABLE_RESOURCE_PRINCIPAL(username => 'ADB_USER');Weitere Informationen finden Sie unter DISABLE_RESOURCE_PRINCIPAL - Prozedur.
Resource Principal mit DBMS_CLOUD verwenden
Wenn Sie Resource-Principal-Zugangsdaten mit DBMS_CLOUD-Aufrufen angeben, authentifiziert die Datenbank die Oracle Cloud Infrastructure-Anforderungen für Sie. Die Datenbank stellt die Zugangsdaten für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen bereit.
Wenn dies noch nicht geschehen ist, führen Sie die erforderlichen Voraussetzungsschritte aus:
-
Der Zugriff auf Oracle Cloud Infrastructure-Ressourcen hängt von den dynamischen Gruppenregeln und den Policys ab, die Sie in Oracle Cloud Infrastructure-Policys und dynamischen Gruppen festlegen. Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung von Resource Principal mit einer autonomen KI-Datenbank ausführen.
-
Nachdem Sie die dynamische Gruppe und die Policys definiert haben, aktivieren Sie das ADMIN-Schema oder ein anderes Schema, um einen Resource Principal zu verwenden. Weitere Informationen finden Sie unter Resource Principal für den Zugriff auf Oracle Cloud Infrastructure-Ressourcen aktivieren.
So verwenden Sie eine Prozedur DBMS_CLOUD mit Zugangsdaten des Resource Principals:
-
Verwenden Sie eine Prozedur oder Funktion
DBMS_CLOUD, und geben SieOCI$RESOURCE_PRINCIPALals Zugangsdatennamen an.Beispiel: Sie können mit einem Resource Principal auf Oracle Cloud Infrastructure Object Storage zugreifen:
CREATE TABLE CHANNELS (channel_id CHAR(1), channel_desc VARCHAR2(20), channel_class VARCHAR2(20) ); / BEGIN DBMS_CLOUD.COPY_DATA( table_name =>'CHANNELS', credential_name =>'OCI$RESOURCE_PRINCIPAL', file_uri_list =>'https://objectstorage.us-phoenix-1.oraclecloud.com/n/ namespace-string/b/bucketname/o/channels.txt', format => json_object('delimiter' value ',') ); END; /Wenn Sie die Schritte vergleichen, die für den Zugriff auf Object Storage erforderlich sind, wie unter Zugangsdaten erstellen und Daten in eine vorhandene Tabelle kopieren gezeigt, beachten Sie, dass Schritt 1 nicht erforderlich ist, wenn Sie den Resource Principal verwenden, da Sie die vom System definierten Zugangsdaten
OCI$RESOURCE_PRINCIPALverwenden.