Microsoft Active Directory mit Autonomous Database on Dedicated Exadata Infrastructure verwenden

Sie können Autonomous Database on Dedicated Exadata Infrastructure konfigurieren, um Microsoft Active Directory-Benutzer zu authentifizieren und zu autorisieren. Diese Konfiguration ermöglicht Active Directory-Benutzern den Zugriff auf eine Autonomous Database mit ihren Active Directory-Zugangsdaten.

Hinweis:

Informationen zur Verwendung von Azure Active Directory mit Autonomous Database finden Sie unter Azure Active Directory (Azure AD) mit Autonomous Database verwenden. Die CMU-Option unterstützt Microsoft Active Directory-Server, jedoch nicht den Azure Active Directory-Service.

Die Integration von Autonomous Database mit CMU (Centrally Managed Users, zentral verwaltete Benutzer) ermöglicht die Integration mit Microsoft Active Directory. CMU mit Active Directory ordnet globale Oracle-Datenbankbenutzer und globale Rollen Microsoft Active Directory-Benutzern und -Gruppen zu.

Voraussetzungen für die Konfiguration von CMU mit Microsoft Active Directory auf Autonomous Database

Für die Konfiguration der Verbindung von Autonomous Database zu Active Directory sind die folgenden Voraussetzungen erforderlich:

  • Microsoft Active Directory muss installiert und konfiguriert sein. Weitere Informationen finden Sie unter Erste Schritte mit AD DS.

  • Sie müssen einen Oracle-Serviceverzeichnisbenutzer in Active Directory erstellen. Informationen zum Benutzeraccount des Oracle-Serviceverzeichnisses finden Sie in Schritt 1: Oracle Service Directory-Benutzeraccount in Microsoft Active Directory erstellen und Berechtigungen erteilen im Oracle Database 19c Security Guide oder im Oracle Database 23ai Security Guide.

  • Ein Active Directory-Systemadministrator muss den Oracle-Kennwortfilter auf den Active Directory-Servern installiert haben und Active Directory-Gruppen mit Active Directory-Benutzern einrichten, um Ihre Anforderungen zu erfüllen.

    Nur die Kennwortauthentifizierung wird mit CMU für Autonomous Database unterstützt. Sie müssen daher das enthaltene Utility opwdintg.exe verwenden, um den Oracle-Kennwortfilter auf Active Directory zu installieren, das Schema zu erweitern und drei neue ORA_VFR-Gruppen für drei Typen der Passwortverifizierungsgenerierung zu erstellen. Informationen zur Installation des Oracle-Kennwortfilters finden Sie in Step 2: For Password Authentication, Install the Password Filter and Extend the Microsoft Active Directory Schema in Oracle Database 19c Security Guide oder Oracle Database 23ai Security Guide.

  • Autonomous Database muss über das öffentliche Internet auf die Active Directory-Server zugreifen können. Der Port 636 der Active Directory-Server muss für Autonomous Database in Oracle Cloud Infrastructure geöffnet sein, damit Autonomous Database über das Internet sicheren LDAP-Zugriff über TLS/SSL auf die Active Directory-Server erhält.

    Sie können Ihr On-Premise-Active Directory auch auf Oracle Cloud Infrastructure erweitern. So können Sie schreibgeschützte Domaincontroller (RODCs) für das On-Premise-Active Directory einrichten. Anschließend können Sie diese RODCs in Oracle Cloud Infrastructure verwenden, um die On-Premise-Active Directory-Benutzer für den Zugriff auf autonome Datenbanken zu authentifizieren und zu autorisieren.

    Weitere Informationen finden Sie unter Active Directory-Integration in der Hybrid Cloud erweitern.

  • Sie benötigen das CMU-Konfigurationsdatenbank-Wallet cwallet.sso und die CMU-Konfigurationsdatei dsi.ora, um CMU für die autonome Datenbank zu konfigurieren:

    • Wenn Sie CMU für eine On-Premise-Datenbank konfiguriert haben, können Sie diese Konfigurationsdateien vom On-Premise-Datenbankserver abrufen.

    • Wenn Sie CMU nicht für eine On-Premise-Datenbank konfiguriert haben, müssen Sie diese Dateien erstellen. Anschließend laden Sie die Konfigurationsdateien in die Cloud hoch, um CMU auf Ihrer Autonomous Database-Instanz zu konfigurieren. Sie können das Wallet und die Datei dsi.ora validieren, indem Sie CMU für eine On-Premise-Datenbank konfigurieren und prüfen, ob sich ein Active Directory-Benutzer mit diesen Konfigurationsdateien erfolgreich bei der On-Premise-Datenbank anmelden kann. Anschließend laden Sie diese Konfigurationsdateien in die Cloud hoch, um CMU für Ihre autonome Datenbank zu konfigurieren.

    Einzelheiten zur Wallet-Datei für CMU finden Sie unter:

    Einzelheiten zur Datei dsi.ora für CMU finden Sie unter Datei dsi.ora erstellen in Oracle Database 19c - Sicherheitshandbuch oder Oracle Database 23ai - Sicherheitshandbuch.

    Weitere Informationen zur Konfiguration von Active Directory für CMU und zur Fehlerbehebung von CMU für On-Premise-Datenbanken finden Sie unter How To Configure Centrally Managed Users For Database Release 18c or Later Releases (Dok.-ID 2462012.1).

CMU mit Microsoft Active Directory auf Autonomous Database konfigurieren

So konfigurieren Sie Autonomous Database für CMU für die Verbindung mit Active Directory-Servern:

  1. Melden Sie sich als ADMIN-Benutzer bei Autonomous Database an.
  2. Prüfen Sie, ob ein anderes externes Authentifizierungsschema in der Datenbank aktiviert ist, und deaktivieren Sie es.

    Hinweis:

    Sie können die CMU-AD-Konfiguration zusätzlich zu Kerberos fortsetzen, um CMU-AD-Kerberos-Authentifizierung für Microsoft Active Directory-Benutzer bereitzustellen.
  3. Laden Sie die CMU-Konfigurationsdateien, einschließlich der Datenbank-Wallet-Datei cwallet.sso und der CMU-Konfigurationsdatei dsi.ora in den Objektspeicher hoch. Dieser Schritt hängt vom verwendeten Objektspeicher ab.

    Die Konfigurationsdatei dsi.ora enthält die Informationen zum Suchen der Active Directory-Server.

    Wenn Sie Oracle Cloud Infrastructure Object Storage verwenden, finden Sie unter Daten in Object Storage ablegen Details zum Hochladen von Dateien.

  4. Erstellen Sie in Autonomous Database ein neues Verzeichnisobjekt, oder wählen Sie ein vorhandenes Verzeichnisobjekt aus. In diesem Verzeichnis speichern Sie das Wallet und die Konfigurationsdatei für die Verbindung mit Active Directory:

    Beispiel:

    CREATE OR REPLACE DIRECTORY cmu_wallet_dir AS 'cmu_wallet';

    Verwenden Sie die folgende SQL-Anweisung, um den Dateisystemverzeichnispfad des Verzeichnisobjekts abzufragen:

    SELECT DIRECTORY_PATH FROM DBA_DIRECTORIES WHERE 
       DIRECTORY_NAME='directory_object_name';

    Beispiel:

    SELECT DIRECTORY_PATH FROM DBA_DIRECTORIES WHERE 
       DIRECTORY_NAME='CMU_WALLET_DIR';
    
    
    DIRECTORY_PATH
    ----------------------------------------------------------------------------
    /file_system_directory_path_example/cmu_wallet

    Hinweis:

    Der Directory-Objektname in der Abfrage muss in Großbuchstaben stehen, da die Groß-/Kleinschreibung beim Erstellen des Directory-Objekts nicht beibehalten wurde.
    Wenn Sie die Groß-/Kleinschreibung für den Verzeichnisobjektnamen beibehalten möchten, müssen Sie dessen Namen in doppelte Anführungszeichen setzen. Beispiel:
    CREATE OR REPLACE DIRECTORY "CMU_wallet_dir" AS 'cmu_wallet';
  5. Kopieren Sie die CMU-Konfigurationsdateien, das Datenbank-Wallet cwallet.sso und dsi.ora mit DBMS_CLOUD.GET_OBJECT aus dem Objektspeicher in das Verzeichnis, das Sie im obigen Schritt erstellt oder ausgewählt haben.

    Beispiel: Verwenden Sie DBMS_CLOUD.GET_OBJECT, um die Dateien wie folgt aus dem Objektspeicher in CMU_WALLET_DIR zu kopieren:

    BEGIN
       DBMS_CLOUD.GET_OBJECT(
          credential_name => 'DEF_CRED_NAME',
          object_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/cwallet.sso',
          directory_name => 'CMU_WALLET_DIR');
       DBMS_CLOUD.GET_OBJECT(
          credential_name => 'DEF_CRED_NAME',
          object_uri => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o/dsi.ora',
          directory_name => 'CMU_WALLET_DIR');
    END;
    /

    In diesem Beispiel ist namespace-string der Oracle Cloud Infrastructure-Objektspeicher-Namespace und bucketname der Bucket-Name. Weitere Informationen finden Sie unter Object Storage-Namespaces.

    Weitere Informationen finden Sie unter Prozedur GET_OBJECT.

    Verwenden Sie die folgende SQL-Anweisung, um die in das Verzeichnis kopierten Dateien abzufragen.

    SELECT * FROM DBMS_CLOUD.LIST_FILES('directory_object_name');

    Beispiel:

    SELECT * FROM DBMS_CLOUD.LIST_FILES('CMU_WALLET_DIR');

    Beachten Sie, dass der Verzeichnisobjektname in dieser Abfrage in Großbuchstaben stehen muss, da die Groß-/Kleinschreibung beim Erstellen des Verzeichnisobjekts nicht beibehalten wurde.

  6. Aktivieren Sie CMU-AD in Autonomous Database mit dem Package DBMS_CLOUD_ADMIN.

    Hinweis:

    Ersetzen Sie die Verzeichnisnamen im folgenden Beispiel durch die Namen, die für Ihre Umgebung ausgewählt wurden. Stellen Sie sicher, dass Sie als ADMIN-Benutzer angemeldet sind, bevor Sie diesen Befehl ausführen.
    BEGIN
      DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
        type     => 'CMU',
        params   => JSON_OBJECT('directory_name' value 'CMU_WALLET_DIR')
      ); 
    END;
    / 
  7. Um die Sicherheit zu gewährleisten, entfernen Sie die CMU-Konfigurationsdateien, einschließlich des Datenbank-Wallets cwallet.sso und der CMU-Konfigurationsdatei dsi.ora aus dem Objektspeicher. Sie können diese Dateien mit lokalen Objektspeichermethoden entfernen oder mit DBMS_CLOUD.DELETE_OBJECT aus dem Objektspeicher löschen.
    Weitere Informationen zu DBMS_CLOUD.DELETE_OBJECT finden Sie unter Prozedur DELETE_OBJECT.

Hinweis:

Anweisungen zum Deaktivieren des Zugriffs von Autonomous Database finden Sie unter Active Directory-Zugriff auf Autonomous Database deaktivieren.

Weitere Informationen finden Sie unter Zentral verwaltete Benutzer mit Microsoft Active Directory konfigurieren in der Dokumentation Oracle Database 19c Security Guide oder in der Dokumentation Oracle Database 19c Security Guide.

CMU mit Microsoft Active Directory auf Exadata Cloud@Customer konfigurieren

Gilt nur für: Anwendbar Exadata Cloud@Customer

So konfigurieren Sie Autonomous Database auf Exadata Cloud@Customer für CMU, um eine Verbindung zu Active Directory-Servern herzustellen, ohne den Oracle Object Store-Service zu verwenden:

  1. Melden Sie sich als ADMIN-Benutzer bei Autonomous Database an.
  2. Prüfen Sie, ob ein anderes externes Authentifizierungsschema in der Datenbank aktiviert ist, und deaktivieren Sie es mit dem folgenden SQL-Befehl.
    BEGIN
      DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
    END;
    /
  3. CMU-AD benötigt das Active Directory-Verbindungs-Wallet cwallet.sso und die dsi.ora-Dateien in einem lokalen Dateisystem in Ihrem autonomen Exadata-VM-Cluster (AVMC). Dazu können Sie diese Dateien im Oracle Object Store-Service in Oracle Cloud Infrastructure hosten und sie dann mit dem Package DBMS_CLOUD lokal kopieren. Sie finden diesen Prozess mit detaillierten Schritten und Beispielen unter CMU mit Microsoft Active Directory in Autonomous Database konfigurieren.
  4. Wenn das Hosten von cwallet.sso und dsi.ora im Cloud-Speicher nicht möglich ist, können Sie diese Dateien mit einer Network File System-(NFS-)Freigabe in Ihrem Data Center hosten und dann in ein Datenbankverzeichnis unter dem Datenbankdateisystem (DBFS) verschieben. Dazu müssen Sie zunächst eine lokal verfügbare NFS-Freigabe an das Autonomous Database-Verzeichnisobjekt anhängen, wie unten gezeigt:
    1. Erstellen Sie ein Datenbankverzeichnis in der Autonomous Database-Instanz mit dem folgenden SQL-Befehl von Ihrem SQL-Client:
      create or replace directory TMPFSSDIR as 'tmpfssdir';
      
    2. Mounten Sie das NFS-Share mit dem in Autonomous Database verfügbaren Package DBMS_CLOUD_ADMIN in diesem Verzeichnis.

      Tipp:

      Möglicherweise müssen Sie mit Ihrem Netzwerk- oder Speicheradministrator zusammenarbeiten, um eine NFS-Freigabe verfügbar zu machen.
      BEGIN
        DBMS_CLOUD_ADMIN.attach_file_system(
          file_system_name => <some_name_you_assign>,
          file_system_location => <your_nfs_fs_path>,
          directory_name => <tmpfssdir_created_above>,
          description => ‘Any_desc_you_like_to_give’
        );
      END
      Beispiel:
      BEGIN 
        DBMS_CLOUD_ADMIN.attach_file_system(
          file_system_name => 'AD-FSS',
          file_system_location => acme.com:/nfs/mount1',
          directory_name => 'TMPFSSDIR',
          description => ‘nfs to host AD files’
        );
      END;
  5. Um eine Abhängigkeit von der NFS-Freigabe zu vermeiden, damit die Dateien cwallet.sso und dsi.ora für CMU verfügbar sind, verschieben Sie sie mit einer Datenbankverzeichniszuordnung in einen lokalen Dateisystemordner. Da Autonomous Database den Zugriff auf das lokale Dateisystem einschränkt, erstellen Sie eine Kopierprozedur mit utl_file, wie unten gezeigt:
    1. Erstellen Sie ein Datenbankverzeichnis in der Autonomous Database-Instanz mit dem folgenden SQL-Befehl von Ihrem SQL-Client:
      CREATE OR REPLACE DIRECTORY cmu_wallet_dir AS 'cmu_wallet';
    2. Prüfen Sie den Verzeichnispfad des oben erstellten Verzeichnisses mit dem folgenden SQL-Befehl:
      SELECT DIRECTORY_PATH 
      FROM DBA_DIRECTORIES 
      WHERE DIRECTORY_NAME ='CMU_WALLET_DIR';

      Hinweis:

      Der Directory-Objektname muss in der Abfrage in Großbuchstaben stehen, da die Groß-/Kleinschreibung beim Erstellen des Directory-Objekts nicht beibehalten wurde.
    3. Kopieren Sie dsi.ora und cwallet.sso mit dem Utility UTL_FILE aus dem NFS-Verzeichnis in das lokale CMU-Wallet-Verzeichnis.
      Beispiel:
      Erstellen Sie eine Stored Procedure namens copyfile wie unten dargestellt:
      CREATE OR REPLACE PROCEDURE copyfile(
        in_loc_dir IN VARCHAR2,
        in_filename IN VARCHAR2,
        out_loc_dir IN VARCHAR2,
        out_filename IN VARCHAR2
      )
      IS
        in_file UTL_FILE.file_type;
        out_file UTL_FILE.file_type;
        buffer_size CONSTANT INTEGER := 32767;
        buffer RAW (32767);
        buffer_length INTEGER; 
      BEGIN
        in_file := UTL_FILE.fopen (in_loc_dir, in_filename, 'rb', buffer_size);
        out_file := UTL_FILE.fopen (out_loc_dir, out_filename, 'wb', buffer_size);
        UTL_FILE.get_raw (in_file, buffer, buffer_size);
        buffer_length := UTL_RAW.LENGTH (buffer);
      
        WHILE buffer_length > 0
        LOOP 
          UTL_FILE.put_raw (out_file, buffer, TRUE);
      
          IF buffer_length = buffer_size
            THEN
              UTL_FILE.get_raw (in_file, buffer, buffer_size);
              buffer_length := UTL_RAW.LENGTH (buffer);
            ELSE
              buffer_length := 0;
            END IF;
        END LOOP;
      
        UTL_FILE.fclose (in_file);
        UTL_FILE.fclose (out_file);
      EXCEPTION
        WHEN NO_DATA_FOUND
        THEN
          UTL_FILE.fclose (in_file);
          UTL_FILE.fclose (out_file);
      END;
      / 
      Kompilieren Sie die gespeicherte Prozedur copyfile. Führen Sie nach der erfolgreichen Kompilierung die Prozedur copyfile einmal aus, um dsi.ora und cwallet.sso aus dem NFS-Verzeichnis in das lokale CMU-Wallet-Verzeichnis zu kopieren, wie unten gezeigt:
      EXEC copyfile('TMPFSSDIR','dsi.ora','CMU_WALLET_DIR','dsi.ora');
      EXEC copyfile('TMPFSSDIR','cwallet.sso','CMU_WALLET_DIR','cwallet.sso');
    4. Führen Sie die folgende SQL-Abfrage aus, um zu validieren, ob die Dateien erfolgreich in das lokale CMU-Wallet-Verzeichnis kopiert wurden.
      SELECT * FROM DBMS_CLOUD.LIST_FILES('CMU_WALLET_DIR');
  6. Trennen Sie mit dem folgenden Befehl die NFS-Freigabe, da Sie sie nicht für CMU-AD benötigen, nachdem die Dateien in das lokale Verzeichnis kopiert wurden.
    exec DBMS_CLOUD_ADMIN.detach_file_system(file_system_name => <FILE_SYSTEM_NAME>);
  7. Aktivieren Sie CMU-AD in Autonomous Database mit dem Package DBMS_CLOUD_ADMIN.

    Hinweis:

    Ersetzen Sie die Verzeichnisnamen im folgenden Beispiel durch die Namen, die für Ihre Umgebung ausgewählt wurden. Stellen Sie sicher, dass Sie als ADMIN-Benutzer angemeldet sind, bevor Sie diesen Befehl ausführen.
    BEGIN
      DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
        type     => 'CMU',
        params   => JSON_OBJECT('directory_name' value 'CMU_WALLET_DIR')
      ); 
    END;
    / 
  8. Führen Sie eine Validierung durch, indem Sie den Eigenschaftswert der Datenbankeigenschaft CMU_WALLET wie unten dargestellt abfragen.
    SELECT PROPERTY_VALUE
    FROM DATABASE_PROPERTIES
    WHERE PROPERTY_NAME = 'CMU_WALLET';
    Beispiel:
    SELECT PROPERTY_VALUE
    FROM DATABASE_PROPERTIES
    WHERE PROPERTY_NAME='CMU_WALLET';
    
    PROPERTY_VALUE
    --------------
    CMU_WALLET_DIR

Sie haben CMU-AD jetzt so konfiguriert, dass externe Authentifizierung über Microsoft Active Directory mit Autonomous Database auf Exadata Cloud@Customer verwendet wird.

Microsoft Active Directory-Rollen in Autonomous Database hinzufügen

Um Active Directory-Rollen hinzuzufügen, ordnen Sie die globalen Datenbankrollen mit CREATE ROLE- oder ALTER ROLE-Anweisungen Active Directory-Gruppen zu (und fügen Sie die IDENTIFIED GLOBALLY AS-Klausel ein).

So fügen Sie globale Rollen für Active Directory-Gruppen in Autonomous Database hinzu:

  1. Melden Sie sich als ADMIN-Benutzer bei der Datenbank an, die für die Verwendung von Active Directory konfiguriert ist (der ADMIN-Benutzer verfügt über die Systemberechtigungen CREATE ROLE und ALTER ROLE, die Sie für diese Schritte benötigen).
  2. Legen Sie die Datenbankautorisierung für Autonomous Database-Rollen mit der Anweisung CREATE ROLE oder ALTER ROLE fest. Nehmen Sie die IDENTIFIED GLOBALLY AS-Klausel auf, und geben Sie den DN einer Active Directory-Gruppe an.

    Verwenden Sie die folgende Syntax, um eine Verzeichnisbenutzergruppe einer globalen Datenbankrolle zuzuordnen:

    CREATE ROLE global_role IDENTIFIED GLOBALLY AS 
         'DN_of_an_AD_GROUP_of_WHICH_the_AD_USER_IS_a_MEMBER';

    Beispiel:

    CREATE ROLE widget_sales_role IDENTIFIED GLOBALLY AS
         'CN=widget_sales_group,OU=sales,DC=production,DC=example,DC=com';

    In diesem Beispiel sind alle Mitglieder von widget_sales_group mit der Datenbankrolle widget_sales_role autorisiert, wenn sie sich bei der Datenbank anmelden.

  3. Verwenden Sie GRANT-Anweisungen, um der globalen Rolle die erforderlichen Berechtigungen oder andere Rollen zu erteilen.

    Beispiel:

    GRANT CREATE SESSION TO WIDGET_SALES_ROLE;
    GRANT DWROLE TO WIDGET_SALES_ROLE;

    DWROLE ist eine vordefinierte Rolle mit definierten allgemeinen Berechtigungen. Informationen zum Festlegen gemeinsamer Berechtigungen für Autonomous Database-Benutzer finden Sie unter Datenbankbenutzerberechtigungen verwalten.

  4. Wenn Sie eine vorhandene Datenbankrolle mit einer Active Directory-Gruppe verknüpfen möchten, verwenden Sie die ALTER ROLE-Anweisung, um die vorhandene Datenbankrolle zu ändern und die Rolle einer Active Directory-Gruppe zuzuordnen.

    Mit der folgenden Syntax können Sie eine vorhandene Datenbankrolle ändern, um sie einer Active Directory-Gruppe zuzuordnen:

    ALTER ROLE existing_database_role 
       IDENTIFIED GLOBALLY AS 'DN_of_an_AD_GROUP_of_WHICH_the_AD_USER_IS_a_MEMBER';
  5. Wenn Sie zusätzliche globale Rollenzuordnungen für andere Active Directory-Gruppen erstellen möchten, führen Sie die folgenden Schritte für jede Active Directory-Gruppe aus.

Weitere Informationen zum Konfigurieren von Rollen mit Microsoft Active Directory finden Sie unter Autorisierung für zentral verwaltete Benutzer konfigurieren in der Dokumentation Oracle Database 19c Security Guide oder Oracle Database 23ai Security Guide.

Microsoft Active Directory-Benutzer in Autonomous Database hinzufügen

Um Active Directory-Benutzer für den Zugriff auf eine Autonomous Database hinzuzufügen, ordnen Sie globale Datenbankbenutzer mit CREATE USER- oder ALTER USER-Anweisungen (mit Klausel IDENTIFIED GLOBALLY AS) Active Directory-Gruppen oder -Benutzern zu.

Für die Integration von Autonomous Database mit Active Directory werden Microsoft Active Directory-Benutzer und -Gruppen direkt globalen Oracle-Datenbankbenutzern und globalen Rollen zugeordnet.

So fügen Sie globale Benutzer für Active Directory-Gruppen oder -Benutzer in Autonomous Database hinzu:

  1. Melden Sie sich als ADMIN-Benutzer bei der Datenbank an, die für die Verwendung von Active Directory konfiguriert ist (der ADMIN-Benutzer verfügt über die Systemberechtigungen CREATE USER und ALTER USER, die Sie für diese Schritte benötigen).
  2. Legen Sie die Datenbankautorisierung für Autonomous Database-Benutzer mit CREATE USER- oder ALTER USER-Anweisungen fest, und nehmen Sie die IDENTIFIED GLOBALLY AS-Klausel auf, indem Sie den DN eines Active Directory-Benutzers oder einer AD-Gruppe angeben.

    Verwenden Sie die folgende Syntax, um einen Verzeichnisbenutzer einem globalen Datenbankbenutzer zuzuordnen:

    CREATE USER global_user IDENTIFIED GLOBALLY AS 'DN_of_an_AD_USER';

    Verwenden Sie die folgende Syntax, um eine Verzeichnisgruppe einem globalen Datenbankbenutzer zuzuordnen:

    CREATE USER global_user IDENTIFIED GLOBALLY AS
        'DN_of_an_AD_GROUP_of_WHICH_the_AD_USER_IS_a_MEMBER';

    Beispiel: So ordnen Sie eine Verzeichnisgruppe mit dem Namen widget_sales_group in der Organisationseinheit sales der Domain production.example.com einem gemeinsamen globalen Datenbankbenutzer namens WIDGET_SALES zu:

    CREATE USER widget_sales IDENTIFIED GLOBALLY AS
         'CN=widget_sales_group,OU=sales,DC=production,DC=example,DC=com';
    

    Dadurch wird eine gemeinsame globale Benutzerzuordnung erstellt. Die Zuordnung mit dem globalen Benutzer widget_sales gilt für alle Benutzer in der Active Directory-Gruppe. Daher kann sich jedes Mitglied in widget_sales_group mit seinen Active Directory-Zugangsdaten bei der Datenbank anmelden (über die gemeinsame Zuordnung des globalen Benutzers widget_sales).

  3. Wenn Sie möchten, dass Active Directory-Benutzer einen vorhandenen Datenbankbenutzer verwenden sowie Eigentümer des Schemas und der vorhandenen Daten sind, ändern Sie mit ALTER USER einen vorhandenen Datenbankbenutzer, um ihn einer Active Directory-Gruppe oder einem AD-Benutzer zuzuordnen.
    • Mit der folgenden Syntax können Sie einen vorhandenen Datenbankbenutzer ändern, um ihn einem Active Directory-Benutzer zuzuordnen:

      ALTER USER existing_database_user IDENTIFIED GLOBALLY AS 'DN_of_an_AD_USER';
    • Mit der folgenden Syntax können Sie einen vorhandenen Datenbankbenutzer ändern, um ihn einer Active Directory-Gruppe zuzuordnen:

      ALTER USER existing_database_user 
           IDENTIFIED GLOBALLY AS 'DN_of_an_AD_GROUP_of_WHICH_the_AD_USER_IS_a_MEMBER';
  4. Wenn Sie zusätzliche globale Benutzerzuordnungen für andere Active Directory-Gruppen oder -Benutzer erstellen möchten, führen Sie die folgenden Schritte für jede Active Directory-Gruppe bzw. jeden Benutzer aus.

Weitere Informationen zum Konfigurieren von Rollen mit Microsoft Active Directory finden Sie unter Autorisierung für zentral verwaltete Benutzer konfigurieren in der Dokumentation Oracle Database 19c Security Guide oder Oracle Database 23ai Security Guide.

Verbindung zu Autonomous Database mit Active Directory-Benutzerzugangsdaten herstellen

Nachdem der ADMIN-Benutzer die CMU-Konfigurationsschritte für Active Directory abgeschlossen und globale Rollen und Benutzer erstellt hat, melden sich Benutzer mit ihrem Active Directory-Benutzernamen und -Kennwort bei Autonomous Database an.

Hinweis:

Melden Sie sich nicht mit einem globalen Benutzernamen an. Globale Benutzernamen haben kein Kennwort, und die Verbindung mit einem globalen Benutzernamen ist nicht erfolgreich. Sie benötigen eine globale Benutzerzuordnung in der autonomen Datenbank, um sich bei der Datenbank anmelden zu können. Sie können sich nicht nur mit globalen Rollenzuordnungen bei der Datenbank anmelden.
  1. Um sich mit einem Active Directory-Benutzernamen und -Kennwort bei Autonomous Database anzumelden, stellen Sie die Verbindung wie folgt her:
    CONNECT "AD_DOMAIN\AD_USERNAME"/AD_USER_PASSWORD@TNS_ALIAS_OF_THE_AUTONOMOUS_DATABASE;

    Beispiel:

    CONNECT "production\pfitch"/password@adbname_medium;

    Wenn die Active Directory-Domain zusammen mit dem Benutzernamen enthalten ist, müssen Sie doppelte Anführungszeichen setzen. Beispiel: "production\pfitch".

    In diesem Beispiel lautet der Active Directory-Benutzername pfitch in Domain production. Der Active Directory-Benutzer ist Mitglied der Gruppe widget_sales_group, die durch den DN 'CN=widget_sales_group,OU=sales,DC=production,DC=example,DC=com' identifiziert wird.

Nach der Konfiguration von CMU mit Active Directory in Autonomous Database und der Einrichtung der Active Directory-Autorisierung mit globalen Rollen und Benutzern können Sie eine Verbindung zu Autonomous Database mit einer der Verbindungsmethoden herstellen, die unter Verbindung zu einer dedizierten Autonomous Database herstellen beschrieben werden. Wenn Sie beim Herstellen einer Verbindung einen Active Directory-Benutzer nutzen möchten, verwenden Sie Active Directory-Benutzerzugangsdaten. Beispiel: Geben Sie einen Benutzernamen in diesem Format an: "AD_DOMAIN\AD_USERNAME" (doppelte Anführungszeichen müssen eingeschlossen werden), und verwenden Sie AD_USER_PASSWORD als Kennwort.

Verbindungsinformationen für Active Directory-Benutzer mit Autonomous Database prüfen

Wenn sich Benutzer mit ihrem Active Directory-Benutzernamen und -Kennwort bei Autonomous Database anmelden, können Sie die Benutzeraktivität prüfen und auditieren.

Beispiel: Wenn sich der Benutzer pfitch anmeldet:

CONNECT "production\pfitch"/password@exampleadb_medium;

Der Benutzername für die Anmeldung des Active Directory-Benutzers (samAccountName) lautet pfitch, widget_sales_group ist der Active Directory-Gruppenname, und widget_sales ist der globale Benutzer von Autonomous Database.

Nachdem sich pfitch bei der Datenbank angemeldet hat, zeigt der Befehl SHOW USER den globalen Benutzernamen an:

SHOW USER;

USER is "WIDGET_SALES"

Der folgende Befehl zeigt den DN (Distinguished Name) des Active Directory-Benutzers an:

SELECT SYS_CONTEXT('USERENV', 'ENTERPRISE_IDENTITY') FROM DUAL;

Beispiel: Sie können die Unternehmensidentität dieses zentral verwalteten Benutzers prüfen:

SQL> SELECT SYS_CONTEXT('USERENV', 'ENTERPRISE_IDENTITY') FROM DUAL;

SYS_CONTEXT('USERENV','ENTERPRISE_IDENTITY')
----------------------------------------------------------------------
cn=Peter Fitch,ou=sales,dc=production,dc=examplecorp,dc=com

Der folgende Befehl zeigt "AD_DOMAIN\AD_USERNAME" an:

SELECT SYS_CONTEXT('USERENV', 'AUTHENTICATED_IDENTITY') FROM DUAL;

Beispiel: Die authentifizierte Active Directory-Benutzeridentität wird erfasst und auditiert, wenn sich der Benutzer bei der Datenbank anmeldet:

SQL> SELECT SYS_CONTEXT('USERENV', 'AUTHENTICATED_IDENTITY') FROM DUAL;

SYS_CONTEXT('USERENV','AUTHENTICATED_IDENTITY')
----------------------------------------------------------------------
production\pfitch

Weitere Informationen finden Sie unter Verifying the Centrally Managed User Logon Information im Oracle Database 19c Security Guide oder im Oracle Database 23ai Security Guide.

Active Directory-Benutzer und -Rollen auf Autonomous Database entfernen

Um Active Directory-Benutzer und -Rollen aus autonomen Datenbanken zu entfernen, verwenden Sie standardmäßige Datenbankbefehle. Dadurch werden die zugehörigen Active Directory-Benutzer oder -Gruppen, die den gelöschten Datenbankbenutzern oder -rollen zugeordnet wurden, nicht entfernt.

So entfernen Sie Benutzer oder Rollen aus Autonomous Database:

  1. Melden Sie sich als Benutzer mit der Systemberechtigung DROP USER oder DROP ROLE bei der Datenbank an, die für die Verwendung von Active Directory konfiguriert ist.
  2. Löschen Sie die globalen Benutzer oder Rollen, die Active Directory-Gruppen oder -Benutzern zugeordnet sind, mit der Anweisung DROP USER oder DROP ROLE.
    Weitere Informationen finden Sie unter Datenbankbenutzer entfernen.

Active Directory-Zugriff auf Autonomous Database deaktivieren

Beschreibt die Schritte zum Entfernen der CMU-Konfiguration aus Autonomous Database (und zum Deaktivieren des LDAP-Zugriffs von Autonomous Database auf Active Directory).

Nachdem Sie die Autonomous Database-Instanz für den Zugriff auf CMU Active Directory konfiguriert haben, können Sie den Zugriff wie folgt deaktivieren:

  1. Melden Sie sich als ADMIN-Benutzer bei Autonomous Database an.
  2. Wählen Sie DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION aus, um die CMU-Authentifizierung zu deaktivieren.

    Hinweis:

    Um diese Prozedur auszuführen, müssen Sie als ADMIN-Benutzer angemeldet sein oder die Berechtigung EXECUTE für DBMS_CLOUD_ADMIN besitzen.

    Beispiel:

    BEGIN   
       DBMS_CLOUD_ADMIN.DISABLE_EXTERNAL_AUTHENTICATION;
    END;
    /

    Dadurch wird die CMU-Authentifizierung auf Ihrer Autonomous Database-Instanz deaktiviert.

Weitere Informationen finden Sie unter Prozedur DISABLE_EXTERNAL_AUTHENTICATION.

Einschränkungen mit Microsoft Active Directory auf Autonomous Database

Die folgenden Einschränkungen gelten für CMU mit Active Directory auf Autonomous Database:

  • Nur die "Kennwortauthentifizierung" und Kerberos werden für CMU mit Autonomous Database unterstützt. Wenn Sie die CMU-Authentifizierung mit Autonomous Database verwenden, werden andere Authentifizierungsmethoden wie Azure AD, OCI IAM und PKI nicht unterstützt.

  • Oracle Application Express und Database Actions werden für Active Directory-Benutzer mit Autonomous Database nicht unterstützt.