Python-Anwendungen mit Wallet (TLS) verbinden
Sie können Python-Anwendungen ohne Wallet mit Ihrer autonomen KI-Datenbankinstanz verbinden. Die Verbindung einer Python-Anwendung ohne Wallet (TLS) bietet Sicherheit für Authentifizierung und Verschlüsselung. Die Sicherheit wird mit Clientzugangsdaten (durch Angabe eines Benutzernamens und Kennworts) erzwungen.
Der Standard-Thin-Modus des python-oracledb-Treibers stellt eine direkte Verbindung zu Oracle AI Database her. Es kann optional Oracle Client-Librarys, "Thick mode", für einige zusätzliche Funktionen verwenden. Die Oracle Client-Librarys können von Oracle Instant Client, dem vollständigen Oracle Client oder einer Oracle AI Database-Installation stammen.
Führen Sie die folgenden Schritte aus, um Ihre Python-Anwendung mit einer autonomen AI-Datenbankinstanz ohne Wallet (TLS) zu verbinden:
Informationen zum Thick-Modus finden Sie unter Enabling python-oracledb Thick mode.
TLS in autonomer KI-Datenbank aktivieren und Verbindungszeichenfolge abrufen
Um eine Python-Anwendung ohne Wallet auszuführen, aktivieren Sie die Instanz der autonomen KI-Datenbank für TLS-Verbindungen, und rufen Sie eine Verbindungszeichenfolge ab, um die Datenbank aus der Python-Anwendung zu kontaktieren.
-
Prüfen Sie, ob die Instanz der autonomen KI-Datenbank für TLS-Verbindungen aktiviert ist.
Wenn die Instanz für TLS-Verbindungen aktiviert ist, wird im Bereich Netzwerk in der Oracle Cloud Infrastructure-Konsole im Feld Mutual TLS-(mTLS-)Authentifizierung Folgendes angezeigt: Nicht erforderlich.
Wenn Ihre Instanz eine gegenseitige TLS-Authentifizierung erfordert, lassen Sie TLS-Verbindungen auf der Instanz der autonomen AI-Datenbank zu. Weitere Einzelheiten finden Sie unter Autonome AI-Datenbankinstanz so aktualisieren, dass sowohl TLS als auch mTLS-Authentifizierung zulässig sind.
-
Rufen Sie wie folgt eine Verbindungszeichenfolge für den Autonomous AI Database-Service ab, um auf die Datenbank zuzugreifen:
-
Klicken Sie in der Oracle Cloud Infrastructure-Konsole auf Datenbankverbindung.
-
Wählen Sie TLS im Dialogfeld "Datenbankverbindung" unter Verbindungszeichenfolgen in der Dropdown-Liste TLS-Authentifizierung aus.
Hinweis
Hinweis: Sie müssen TLS in der Dropdown-Liste TLS-Authentifizierung auswählen, um die TLS-Verbindungszeichenfolgen abzurufen, bevor Sie eine Verbindungszeichenfolge kopieren. (Wenn der Wert Mutual TLS lautet, haben die Verbindungszeichenfolgen unterschiedliche Werte und funktionieren nicht mit TLS-Verbindungen.)
-
-
Kopieren Sie die Verbindungszeichenfolge für den Datenbankservice, den Sie mit der Anwendung verwenden möchten.
Weitere Informationen finden Sie unter TNS-Namen und Verbindungszeichenfolgen für eine autonome KI-Datenbankinstanz anzeigen.
Python-Anwendung ohne Wallet ausführen
Eine Python-Anwendung kann mit den Datenbankzugangsdaten und einem Verbindungsdeskriptor eine Verbindung zu Ihrer autonomen AI-Datenbankinstanz ohne Wallet (TLS) herstellen.
-
Rufen Sie die Verbindungszeichenfolge ab, wie unter TLS in autonomer KI-Datenbank aktivieren und Verbindungszeichenfolge abrufen beschrieben.
-
Legen Sie in Ihrer Python-Anwendung die folgenden Verbindungsparameter fest, um eine Verbindung zu einer autonomen AI-Datenbankinstanz herzustellen:
-
dsn: Verwenden Sie die Verbindungszeichenfolge, um den gewünschten Datenbankservicenamen anzugeben. -
password: Gibt das Kennwort des Datenbankbenutzers an. -
user: Gibt den Datenbankbenutzer an.
Beispiel:
cs='''(description = (retry_count=20)(retry_delay=3)(address=(protocol=tcps) (port=1521)(host=xxx.oraclecloud.com)) (connect_data=(service_name=xxx.adb.oraclecloud.com)) (security=(ssl_server_dn_match=yes)))''' connection=oracledb.connect( user="admin", password=password, dsn=cs) -
-
Wenn Sie eine Verbindung im Thick-Modus herstellen möchten, nehmen Sie
oracledb.init_oracle_client()in Ihre Python-Anwendung auf.Beispiel:
cs='''(description = (retry_count=20)(retry_delay=3)(address=(protocol=tcps) (port=1521)(host=xxx.oraclecloud.com)) (connect_data=(service_name=xxx.adb.oraclecloud.com)) (security=(ssl_server_dn_match=yes)))''' oracledb.init_oracle_client() connection=oracledb.connect( user="admin", password=password, dsn=cs)