Datenbanklinks aus einer autonomen KI-Datenbank zu einer öffentlich zugänglichen Oracle Database mit einem Wallet (mTLS) erstellen

Sie können Datenbanklinks aus einer autonomen KI-Datenbank zu einer Oracle-Zieldatenbank erstellen, die sich auf einem öffentlichen Endpunkt befindet.

Um Datenbanklinks mit Autonomous AI Database zu verwenden, muss die Zieldatenbank so konfiguriert sein, dass TCP/IP mit SSL-(TCPS-)Authentifizierung verwendet wird. Autonome KI-Datenbanken verwenden standardmäßig TCP/IP mit SSL-(TCPS-)Authentifizierung, sodass Sie keine zusätzliche Konfiguration in Ihrer Zieldatenbank vornehmen müssen, um eine Verbindung zu einer anderen autonomen KI-Datenbank herzustellen. Andere Oracle-Datenbanken müssen für die Verwendung von TCP/IP mit SSL-(TCPS-)Authentifizierung konfiguriert sein. Weitere Informationen finden Sie unter Secure Sockets Layer Authentication konfigurieren in der Dokumentation Oracle Database 19c Security Guide oder in der Dokumentation Oracle Database 26ai Security Guide.

Um Datenbanklinks zu einem öffentlichen Ziel zu erstellen, muss auf das Oracle Database-Ziel zugegriffen werden können. Einige Datenbanken können den Zugriff einschränken (z.B. mit Access Control-Listen). Stellen Sie sicher, dass die Zieldatenbank den Zugriff von der Quelldatenbank aus ermöglicht, damit der Datenbanklink funktioniert. Wenn Sie den Zugriff mit Access Control-Listen (ACLs) einschränken, können Sie die ausgehende IP-Adresse Ihrer autonomen Quell-AI-Datenbank ermitteln und zulassen, dass diese IP-Adresse eine Verbindung zur Zieldatenbank herstellt.

Weitere Informationen finden Sie unter Datenbanklink von Ihrer autonomen KI-Datenbank zu einer Database Cloud Service-Instanz erstellen.

So erstellen Sie Datenbanklinks zu einer Oracle-Zieldatenbank mit einem Wallet (mTLS):

  1. Kopieren Sie das Zieldatenbank-Wallet cwallet.sso, das die Zertifikate für die Zieldatenbank enthält, in den Objektspeicher.

    Beachten Sie Folgendes für die Wallet-Datei:

    • Die Wallet-Datei sowie die Datenbankbenutzer-ID und das Kennwort ermöglichen den Zugriff auf Daten in der Oracle Database-Zielinstanz. Speichern Sie die Wallet-Dateien an einem sicheren Speicherort. Geben Sie Wallet-Dateien nur für autorisierte Benutzer frei.

    • Benennen Sie die Wallet-Datei nicht um. Die Wallet-Datei in Object Storage muss den Namen cwallet.sso haben.

  2. Erstellen Sie Zugangsdaten für den Zugriff auf den Objektspeicher, in dem Sie die Wallet-Datei cwallet.sso speichern. Informationen zu den Benutzernamen- und Kennwortparametern für verschiedene Object Storage-Services finden Sie unter CREATE_CREDENTIAL-Prozedur.

  3. Erstellen Sie ein Verzeichnis in der autonomen KI-Datenbank für die Wallet-Datei cwallet.sso.

    Beispiel:

     CREATE DIRECTORY *dblink_wallet_dir* AS '*directory_path_of_your_choice*';
    

    Informationen zum Erstellen von Verzeichnissen finden Sie unter Verzeichnis in autonomer KI-Datenbank erstellen.

  4. Mit DBMS_CLOUD.GET_OBJECT können Sie das Zieldatenbank-Wallet in das Verzeichnis hochladen, das Sie im vorherigen Schritt DBLINK_WALLET_DIR erstellt haben.

    Beispiel:

     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 => '*DBLINK_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.

    Hinweis: Die credential_name, die Sie in diesem Schritt verwenden, sind die Zugangsdaten für den Objektspeicher. Im nächsten Schritt erstellen Sie die Zugangsdaten für den Zugriff auf die Zieldatenbank.

  5. Erstellen Sie in der Instanz der autonomen KI-Datenbank Zugangsdaten für den Zugriff auf die Zieldatenbank. Die username und password, die Sie mit DBMS_CLOUD.CREATE_CREDENTIAL angeben, sind die Zugangsdaten für die Zieldatenbank, mit der Sie den Datenbanklink erstellen.

    Hinweis: Die Angabe des Parameters credential_name ist erforderlich.

    Beispiel:

     BEGIN
         DBMS_CLOUD.CREATE_CREDENTIAL(
             credential_name => 'DB_LINK_CRED',
             username => 'NICK',
             password => '*password*');
     END;
     /
    

    Die Zeichen im Parameter username müssen Großbuchstaben enthalten.

    Dieser Vorgang speichert die Zugangsdaten in einem verschlüsselten Format in der Datenbank. Sie können einen beliebigen Namen als Zugangsdatenname verwenden.

  6. Erstellen Sie den Datenbanklink zur Zieldatenbank mit DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Beispiel:

     BEGIN
         DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK(
             db_link_name => 'SALESLINK',
             hostname => 'adb.eu-frankfurt-1.oraclecloud.com',
             port => '1522',
             service_name => '*example*_medium.atpc.example.oraclecloud.com',
             ssl_server_cert_dn => 'CN=atpc.example.oraclecloud.com,OU=Oracle BMCS FRANKFURT,O=Oracle Corporation,L=Redwood City,ST=California,C=US',
             credential_name => 'DB_LINK_CRED',
             directory_name => '*DBLINK_WALLET_DIR*');
     END;
     /
    

    Andere Benutzer als ADMIN benötigen Berechtigungen zum Ausführen von DBMS_CLOUD_ADMIN.CREATE_DATABASE_LINK.

    Wenn die Wallet-Datei im Verzeichnis, das mit directory_name angegeben ist, nicht cwallet.sso ist, meldet die Prozedur einen Fehler wie: ORA-28759: failure to open file.

  7. Verwenden Sie den von Ihnen erstellten Datenbanklink, um auf Daten in der Zieldatenbank zuzugreifen.

    Beispiel:

     SELECT * FROM employees@SALESLINK;
    

Für die Zugangsdaten, die Sie in Schritt 5 erstellen, die Zieldatenbankzugangsdaten. Wenn sich das Kennwort des Zielbenutzers ändert, können Sie die Zugangsdaten mit den Zugangsdaten des Zielbenutzers folgendermaßen aktualisieren:

BEGIN
    DBMS_CLOUD.UPDATE_CREDENTIAL (
        credential_name => 'DB_LINK_CRED',
        attribute => 'PASSWORD',
        value => '*password*' );
END;
/

Dabei ist password das neue Kennwort.

Nach diesem Vorgang funktionieren die vorhandenen Datenbanklinks, die diese Zugangsdaten verwenden, weiter, ohne die Datenbanklinks löschen und neu erstellen zu müssen.

Weitere Informationen finden Sie hier:

Datenbanklinkhinweise mit Oracle Database-Ziel

Bietet Hinweise zum Erstellen von Datenbanklinks zu einer Oracle-Zieldatenbank (wenn das Ziel keine autonome KI-Datenbank ist)

Hinweise zu Datenbanklinks zu anderen Oracle-Datenbanken:

Verwandte Inhalte

DBMS_CLOUD_ADMIN-Package