Voraussetzungen
Bevor Sie eine Verbindung zu Datenbanktools erstellen, die IAM-Authentifizierung verwendet, stellen Sie sicher, dass die folgenden Voraussetzungen erfüllt sind.
Datenbankvoraussetzungen
Bevor Sie eine Verbindung zu Datenbanktools für die Verwendung der IAM-Authentifizierung konfigurieren, stellen Sie sicher, dass die folgenden Datenbankanforderungen erfüllt sind:
Bei ADB sind die Voraussetzungen für die IAM-Authentifizierung (wie Secure/TLS-Konnektivität) bereits im Datenbanktoolservice konfiguriert. In den meisten Fällen können Sie direkt zu den Schritten für die Zuordnung von IAM-Policy und Datenbankbenutzern gehen.
Bei Nicht-ADB-Oracle-Datenbanken (wie Exadata und Base Database Service) müssen Sie zuerst die Voraussetzungen (wie TCPS-/TLS-Serverauthentifizierung, Wallets/Zertifikate) prüfen und konfigurieren, damit IAM-Tokenverbindungen funktionieren. Siehe Voraussetzungen für die IAM-Authentifizierung in Oracle Database
Unterstützte Datenbankversionen
-
Folgende Oracle Database-as-a-Service-(DBaaS-)Umgebungen werden unterstützt:
- Oracle Autonomous Database (ADB)
- Oracle Exadata Database Service
- Oracle Base Database Service
-
Sie benötigen Oracle Database Release 19c, Version 19.16 oder höher.
-
Der Oracle Database 21c-Client unterstützt die tokenbasierte IAM-Authentifizierung nicht vollständig. Verwenden Sie eine Clientversion, die die erforderliche Funktionalität des IAM-Datenbanktokens unterstützt. Siehe Abschnitt Oracle Cloud Infrastructure (OCI) Identity and Access Management (IAM) SSO-Tokenbasierte Authentifizierung in IAM-Authentifizierung mit Oracle Database.
TLS (TCPS)-Konnektivität und Serverauthentifizierung
Für die IAM-Authentifizierung ist eine sichere Verbindung zur Datenbank erforderlich:
- Verwenden Sie TCPS vom Datenbanktoolservice zur Datenbank. Wählen Sie diese Option aus, wenn Sie Verbindung erstellen.
- Konfigurieren Sie die TLS-Serverauthentifizierung für die Datenbank. Stellen Sie bei Nicht-ADB-Umgebungen sicher, dass Sie ein TLS-Wallet und zugehörige Zertifikate unter
WALLET_ROOTeinrichten. Befolgen Sie dabei die Anforderungen für den jeweiligen Datenbankservice und die Konfiguration.
Weitere Informationen finden Sie unter TLS für die Verwendung von IAM-Token konfigurieren.
IAM-Authentifizierung für Oracle Database aktivieren
So aktivieren Sie die IAM-Authentifizierung:
-
Erstellen Sie eine Verbindung zu Datenbanktools mit der Kennwortauthentifizierung mit einem privilegierten Datenbankbenutzer (z.B.
SYSoderADMIN). Informationen zum Erstellen einer Verbindung finden Sie unter Verbindung erstellen. -
Externe Authentifizierung für die Datenbankinstanz konfigurieren.
- Wählen Sie die Verbindung zu den Datenbanktools aus.
- Blenden Sie Aktionen ein, und wählen Sie Externe Authentifizierung konfigurieren aus.
- Wählen Sie unter Externer Authentifizierungstyp die Option OCI_IAM aus.
- Klicken Sie auf Aktualisieren, um die Konfiguration zu speichern.
Globale Datenbankbenutzer erstellen
Für die IAM-Authentifizierung ist eine globale Benutzerzuordnung in der Datenbank erforderlich, damit die Datenbank einem Datenbankbenutzer (Schema) einen IAM-Principal (Benutzer oder Gruppe) zuordnen kann.
Exklusive Zuordnung
Verwenden Sie eine exklusive Zuordnung, wenn Sie eine Eins-zu-Eins-Zuordnung zwischen einem IAM-Benutzer und einem Datenbankschema wünschen.
CREATE USER scott IDENTIFIED GLOBALLY AS 'IAM_PRINCIPAL_NAME=<iam-user-name-or-identifier>';
GRANT CREATE SESSION TO scott;wobei <iam-user-name-or-identifier> auf das Attribut Datenbankbenutzername des IAM-Benutzers verweist. Wenn der Datenbankbenutzername für den IAM-Benutzer nicht verfügbar ist, wird der Standardbenutzername des IAM-Benutzers als Fallback verwendet.
Weitere Informationen zum Datenbankbenutzernamen und zum IAM-Standardbenutzernamen finden Sie unter:
Gemeinsame Zuordnung
Verwenden Sie die gemeinsame Zuordnung, wenn mehrere IAM-Benutzer (Mitglieder einer IAM-Gruppe) eine Verbindung als gemeinsam verwendetes Schema herstellen sollen.
CREATE USER scott IDENTIFIED GLOBALLY AS 'IAM_GROUP_NAME=<iam-group-name>';
GRANT CREATE SESSION TO scott;wobei <iam-group-name> auf den IAM-Gruppennamenwert verweist, der in IAM für die Gruppe definiert ist. Alle IAM-Benutzer, die Mitglieder dieser IAM-Gruppe sind, melden sich als gemeinsam verwendeter Datenbankbenutzer an.
Wenn ein Benutzer Mitglied mehrerer IAM-Gruppen ist, die jeweils über eine gemeinsame Zuordnung verfügen, bestimmt die Datenbank die Zuordnung basierend auf den Zuordnungsregeln der Datenbank (z.B. Erstellungsreihenfolge). Stellen Sie sicher, dass die Zuordnungen für das beabsichtigte Autorisierungsmodell eindeutig sind.
Weitere Informationen finden Sie unter:
IAM-Berechtigungen für Datenbankverbindungen erteilen
Damit Benutzer Datenbanktoken generieren und verwenden können, erteilen Sie IAM-Berechtigungen für Datenbanktoolverbindungen (Ressourcentyp: database-connections). Diese Berechtigungen umfassen die Berechtigung DB_CONNECT.
Verwenden Sie Policy-Anweisungen wie die folgenden Beispiele:
-
Lassen Sie zu, dass eine Gruppe Datenbankverbindungen im Mandanten verwendet.
allow group dbuser to use database-connections in tenancy -
Lassen Sie zu, dass eine Gruppe Datenbankverbindungen in einem Compartment verwendet.
allow group dbuser to use database-connections in compartment prod -
Schränken Sie den Zugriff auf eine bestimmte Datenbank ein (nach OCID).
allow group dbuser to use database-connections in compartment prod where target.database.id = 'ocid1.autonomousdatabase.oc1.phx.xxxx'
Weitere Informationen zu IAM-Policys finden Sie unter IAM-Authentifizierung mit Autonomous AI Database verwenden.