Externe Anrufe mit einem vom Kunden verwalteten Wallet tätigen
Wenn sich Ihre Autonomous Database-Instanz auf einem privaten Endpunkt befindet, können Sie ein vom Kunden verwaltetes Wallet mit Prozeduren in UTL_HTTP
, DBMS_LDAP
, UTL_SMTP
oder UTL_TCP
verwenden. Sie können auch ein vom Kunden verwaltetes Wallet verwenden, wenn der Scheduler SMTP-E-Mail-Benachrichtigungen für verschiedene Ereignisse im Zusammenhang mit Scheduler-Jobs sendet.
- Von Kunden verwaltetes Wallet mit externen Aufrufen verwenden
Wenn sich Ihre Autonomous Database-Instanz auf einem privaten Endpunkt befindet, können Sie ein vom Kunden verwaltetes Wallet für externe Aufrufe verwenden oder mit dem Scheduler, wenn der Scheduler E-Mails für verschiedene Ereignisse im Zusammenhang mit Scheduler-Jobs sendet. - Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen
Zeigt die erforderlichen Schritte zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen oder mit SMTP-E-Mail-Benachrichtigungen des Schedulers an. - Von Kunden verwaltetes Wallet für externe Aufrufe mit UTL_HTTP verwenden
Wenn sich Ihre Autonomous Database-Instanz auf einem privaten Endpunkt befindet, können Sie ein vom Kunden verwaltetes Wallet verwenden, um externe Aufrufe zu verarbeiten. - Vom Kunden verwaltetes Wallet mit Scheduler-E-Mail-Benachrichtigungen verwenden
Beschreibt die Schritte zur Verwendung des Scheduler-SMTP-E-Mail-Servers mit einem vom Kunden verwalteten Wallet. - Hinweise zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen
Bietet Hinweise zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen.
Übergeordnetes Thema: Entwickeln
Vom Kunden verwaltetes Wallet mit externen Aufrufen verwenden
Wenn sich Ihre Autonomous Database-Instanz auf einem privaten Endpunkt befindet, können Sie ein vom Kunden verwaltetes Wallet verwenden, um externe Aufrufe zu verarbeiten, oder mit dem Scheduler, wenn der Scheduler E-Mails für verschiedene Ereignisse im Zusammenhang mit Scheduler-Jobs sendet.
In Autonomous Database können Sie externe Aufrufe für einen der folgenden Zwecke ausführen:
-
Zur Verwendung von Webservices mit
UTL_HTTP
. -
Zum Zugriff auf Daten von LDAP-Servern mit
DBMS_LDAP
. -
E-Mail an
UTL_SMTP
senden. -
Kommunikation mit externen TCP/IP-basierten Servern über TCP/IP mit
UTL_TCP
. -
Für Oracle Scheduler-Job-E-Mail-Benachrichtigungen.
Wenn Sie Prozeduren in diesen Packages verwenden, verwaltet Autonomous Database standardmäßig ein internes Wallet und verwendet immer sichere Verbindungen. (Das von Oracle verwaltete Wallet enthält mehr als 90 der gängigsten vertrauenswürdigen Root- und Zwischen-SSL-Zertifikate.) Wenn sich Ihre Autonomous Database auf einem privaten Endpunkt befindet, haben Sie die Möglichkeit, das von Oracle verwaltete Standard-Wallet mit den vertrauenswürdigen und intermediären SLL-Zertifizierungen zu verwenden, oder Sie können ein vom Kunden verwaltetes Wallet bereitstellen.
Wenn sich Ihre Autonomous Database auf einem privaten Endpunkt befindet, können Sie ein vom Kunden verwaltetes Wallet für UTL_HTTP
, UTL_SMTP
, DBMS_LDAP
und DBMS_NETWORK_ACL_ADMIN
mit den folgenden PL/SQL-Prozeduren angeben:
UTL_HTTP.SET_WALLET (
path IN VARCHAR2,
password IN VARCHAR2 DEFAULT NULL);
UTL_HTTP.REQUEST (
wallet_path IN VARCHAR2 DEFAULT NULL,
wallet_password IN VARCHAR2 DEFAULT NULL)
UTL_HTTP.REQUEST_PIECES (
wallet_p ath IN VARCHAR2 DEFAULT NULL,
wallet_password IN VARCHAR2 DEFAULT NULL,
UTL_HTTP.CREATE_REQUEST_CONTEXT (
wallet_path IN VARCHAR2 DEFAULT NULL,
wallet_password IN VARCHAR2 DEFAULT NULL)
UTL_TCP.OPEN_CONNECTION
wallet_path IN VARCHAR2 DEFAULT NULL,
wallet_password IN VARCHAR2 DEFAULT NULL);
UTL_SMTP.OPEN_CONNECTION
wallet_path IN VARCHAR2 DEFAULT NULL,
wallet_password IN VARCHAR2 DEFAULT NULL)
DBMS_LDAP.OPEN_SSL(
sslwrl IN VARCHAR2,
sslwalletpasswd IN VARCHAR2)
DBMS_NETWORK_ACL_ADMIN.APPEND_WALLET_ACE
wallet_path IN VARCHAR2
DBMS_NETWORK_ACL_ADMIN.APPEND_WALLET_ACL(
wallet_path IN VARCHAR2
Verwenden Sie bei diesen Aufrufen je nach Prozedur entweder den Parameter path
oder wallet_path
, um ein vom Kunden verwaltetes Wallet anzugeben. Sie legen das Wallet-Verzeichnis mit dem Präfix DIR:
fest und fügen einen Wallet-Pfad hinzu. Beispiel:
UTL_HTTP.set_wallet('DIR:WALLET_DIR', 'password');
Der aktuelle Benutzer, der die API aufruft, muss über READ
-Berechtigungen für das Verzeichnisobjekt verfügen oder die Systemberechtigung CREATE ANY DIRECTORY
erhalten.
Das Präfix DIR:
ist das bevorzugte Formular zur Angabe eines vom Kunden verwalteten Wallets. Darüber hinaus wird das Präfix file:
unterstützt. Beispiel:
UTL_HTTP.set_wallet('file:WALLET_DIR/wallet.sso', 'password');
Weitere Informationen finden Sie unter Von Kunden verwaltetes Wallet für externe Aufrufe mit UTL_HTTP verwenden:
Vom Kunden verwaltetes Wallet mit Scheduler Email Server verwenden
Der Scheduler-E-Mail-Server ist zum Senden von E-Mail-Benachrichtigungen für verschiedene Ereignisse im Zusammenhang mit dem Scheduler verfügbar, wie z.B. Benachrichtigung über gestartete, nicht erfolgreiche oder abgeschlossene Jobs. Standardmäßig verwendet der SMTP-E-Mail-Server des Schedulers das in der Eigenschaft SSL_WALLET
definierte Wallet für SSL/TLS-Kommunikationen. Optional können Sie ein vom Kunden verwaltetes Wallet mit dem SMTP-E-Mail-Server des Schedulers verwenden.
Die folgenden globalen Attribute werden mit einem vom Kunden verwalteten Wallet unterstützt:
-
EMAIL_SERVER_WALLET_DIRECTORY
: wird auf ein Verzeichnisobjekt gesetzt, das den Pfad für das SSL-Wallet angibt. EMAIL_SERVER_WALLET_CREDENTIAL
: ist auf ein Zugangsdatenobjekt mit einem Paar aus Benutzername/Kennwort gesetzt, wobei der Benutzername ein beliebiger Wert und das Kennwort das SSL-Wallet-Kennwort ist.
Sie legen Werte für diese Attribute mit DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE
fest.
In den folgenden Themen finden Sie weitere Informationen:
Übergeordnetes Thema: Externe Aufrufe mit einem vom Kunden verwalteten Wallet erstellen
Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen
Zeigt die erforderlichen Schritte zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen oder mit Scheduler-SMTP-E-Mail-Benachrichtigungen an.
Führen Sie die erforderlichen Schritte aus:
Übergeordnetes Thema: Externe Aufrufe mit einem vom Kunden verwalteten Wallet erstellen
Vom Kunden verwaltetes Wallet für externe Aufrufe mit UTL_HTTP verwenden
Wenn sich Ihre Autonomous Database-Instanz auf einem privaten Endpunkt befindet, können Sie mit einem vom Kunden verwalteten Wallet externe Aufrufe verarbeiten.
Diese Schritte beschreiben die Verwendung eines vom Kunden verwalteten Wallets mit UTL_HTTP
. Die Schritte für die anderen unterstützten Packages sind identisch, einschließlich: DMBS_LDAP
, UTL_SMTP
und UTL_TCP
.
Führen Sie die erforderlichen Schritte aus, um ein vom Kunden verwaltetes Wallet zu verwenden. Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen.
So konfigurieren Sie eine Autonomous Database für die Verwendung eines vom Kunden verwalteten Wallets:
Übergeordnetes Thema: Externe Aufrufe mit einem vom Kunden verwalteten Wallet erstellen
Vom Kunden verwaltetes Wallet mit Scheduler-E-Mail-Benachrichtigungen verwenden
Beschreibt die Schritte zur Verwendung des SMTP-E-Mail-Servers für den Scheduler mit einem vom Kunden verwalteten Wallet.
Führen Sie die erforderlichen Schritte aus, um ein vom Kunden verwaltetes Wallet zu verwenden. Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen.
So verwenden Sie ein vom Kunden verwaltetes Wallet mit dem Scheduler-E-Mail-Server:
Übergeordnetes Thema: Externe Aufrufe mit einem vom Kunden verwalteten Wallet erstellen
Hinweise zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen
Bietet Notizen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Anrufen.
-
DBMS_CLOUD
-Anforderungen berücksichtigen nicht das benutzerdefinierte Wallet, das Sie mitUTL_HTTP.set_wallet
festgelegt haben. Dazu gehörenDBMS_CLOUD.SEND_REQUEST
und der gesamte Objektspeicherzugriff für externeDBMS_CLOUD
-Tabellen, die Sie mitDBMS_CLOUD.CREATE_EXTERNAL_TABLE
,DBMS_CLOUD.CREATE_EXTERNAL_PART_TABLE
oderDBMS_CLOUD.CREATE_HYBRID_PART_TABLE
definieren. Wenn Sie eine Abfrage für eine externe Tabelle ausführen, die Sie mit einerDBMS_CLOUD
-Prozedur erstellt haben, berücksichtigen die Abfragen nicht das benutzerdefinierte Wallet, das Sie mitUTL_HTTP.set_wallet
festgelegt haben. -
APEX_WEB_SERVICE
-Anforderungen berücksichtigen nicht das benutzerdefinierte Wallet, das Sie mitUTL_HTTP.set_wallet
festgelegt haben.Um ein vom Kunden verwaltetes Wallet mit APEX zu verwenden, geben Sie den Parameter
p_wallet_path
inAPEX_WEB_SERVICE
-API-Aufrufen an, oder legen Sie die Instanzeinstellung für den Wallet-Pfad in APEX Administration Services fest.Weitere Informationen finden Sie unter Auf Oracle APEX Administration Services zugreifen.
-
Sowohl Wallets mit automatischer Anmeldung als auch passwortgeschützte Wallets werden unterstützt. Wenn Sie ein Wallet für die automatische Anmeldung verwenden, geben Sie
NULL
für den Parameterwallet_password
an. -
Der aktuelle Benutzer, der die
UTL_HTTP.set_wallet
-API aufruft, muss überREAD
-Berechtigungen für das Verzeichnisobjekt verfügen oder die SystemberechtigungCREATE ANY DIRECTORY
erhalten. -
Die
UTL_HTTP.SET_AUTHENTICATION_FROM_WALLET
-API ist zulässig. Weitere Informationen finden Sie unter Prozedur SET_AUTHENTICATION_FROM_WALLET. -
Das Präfix
file:
wird mitUTL_HTTP.set_wallet
unterstützt, solange der angegebene DateipfadPATH_PREFIX
-konform ist.Sie können die
PATH_PREFIX
-Compliance für einen Pfad bestimmen, der als Eingabe mit der ProzedurDBMS_PDB_IS_VALID_PATH
bereitgestellt wird (erteilt anPUBLIC
, einschließlich des BenutzersADMIN
).Beispiel:
with function check_path_prefix_compliance(file_path varchar2) return varchar2 as BEGIN if dbms_pdb_is_valid_path(file_path) then return 'YES'; else return 'NO'; end if; END; SELECT check_path_prefix_compliance('/u03/dbfs/1276CDexample/data/dpdump') as PATH_PREFIX_COMPLIANT, check_path_prefix_compliance('/u01/app/oracle/diag') as PATH_PREFIX_COMPLIANT FROM dual; /
-
Um die Abwärtskompatibilität sicherzustellen, wenn Sie
UTL_HTTP.set_wallet
verwenden, werden Eingabewerte wiefile:
,NULL
usw. akzeptiert, wenn der Wallet-Pfad ignoriert wird. Diese Werte werden ignoriert und geben an, dass der Standard-SSL-Wallet-Pfad mitUTL_HTTP.set_wallet
verwendet werden soll. -
Die
DBMS_NETWORK_ACL_ADMIN
-Wallet-ACL-APIs, wieAPPEND_WALLET_ACL
, werden unterstützt. Mit diesen Prozeduren können Sie Wallet-ACL-Berechtigungen erteilen/entziehen. Weitere Informationen finden Sie unter DBMS_NETWORK_ACL_ADMIN. -
Um die Verwendung der Kennwortzugangsdaten in einem SSL-Wallet zur Authentifizierung zu unterstützen, muss der aktuelle Benutzer, der die
UTL_HTTP
-APIs aufruft, die ACL-Berechtigung "use-passwords
" für den Wallet-Pfad aufweisen. -
Hinweise zum Festlegen von
EMAIL_SERVER_WALLET_DIRECTORY
undEMAIL_SERVER_WALLET_CREDENTIAL
mitDBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE
:-
Um die Attributwerte mit
DBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE
festzulegen, müssen Sie ein administrativer Benutzer oder ein Benutzer mitMANAGE SCHEDULER
-Berechtigungen sein (der ADMIN-Benutzer verfügt über diese Berechtigungen). - Zusätzlich zur Berechtigung
MANAGE SCHEDULER
muss der Benutzer, derDBMS_SCHEDULER.SET_SCHEDULER_ATTRIBUTE
aufruft, über die BerechtigungREAD
für das Verzeichnisobjekt verfügen, das Sie mitEMAIL_SERVER_WALLET_DIRECTORY
festlegen, und über die BerechtigungEXECUTE
für das Zugangsdatenobjekt, das Sie mitEMAIL_SERVER_WALLET_CREDENTIAL
festlegen.
-
Übergeordnetes Thema: Externe Aufrufe mit einem vom Kunden verwalteten Wallet erstellen