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 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. - Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Besuchen
Zeigt die erforderlichen Schritte zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen oder mit SMTP-E-Mail-Benachrichtigungen des Schedulers an. - 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 externe Aufrufe mit einem vom Kunden verwalteten Wallet 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 Notizen 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 externe Aufrufe mit einem vom Kunden verwalteten Wallet oder mit dem Scheduler verarbeiten, 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:
-
Um Webservices mit
UTL_HTTP
zu verwenden. -
Für den Zugriff auf Daten von LDAP-Servern mit
DBMS_LDAP
. -
Zum Senden von E-Mails mit
UTL_SMTP
. -
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 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 in 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. Beispiele:
UTL_HTTP.set_wallet('DIR:WALLET_DIR', 'password');
Der aktuelle Benutzer, der die API aufruft, muss über READ
-Berechtigungen für das Directory-Objekt 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. Beispiele:
UTL_HTTP.set_wallet('file:WALLET_DIR/wallet.sso', 'password');
Weitere Informationen finden Sie unter Vom Kunden verwaltetes Wallet für externe Aufrufe mit UTL_HTTP verwenden:
Vom Kunden verwaltetes Wallet mit Scheduler-E-Mail-Server verwenden
Der Scheduler-E-Mail-Server ist verfügbar, um E-Mail-Benachrichtigungen für verschiedene Ereignisse im Zusammenhang mit dem Scheduler zu senden, z.B. Benachrichtigungen ü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
: ist auf ein Verzeichnisobjekt festgelegt, das den Pfad angibt, in dem sich das SSL-Wallet befindet. EMAIL_SERVER_WALLET_CREDENTIAL
: ist auf ein Zugangsdatenobjekt mit einem Paar aus username/password gesetzt, wobei username ein beliebiger Wert und password 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 Anrufe mit einem vom Kunden verwalteten Wallet tätigen
Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Besuchen
Zeigt die erforderlichen Schritte zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen oder mit SMTP-E-Mail-Benachrichtigungen des Schedulers an.
Führen Sie die erforderlichen Schritte aus:
Übergeordnetes Thema: Externe Anrufe mit einem vom Kunden verwalteten Wallet tätigen
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 externe Aufrufe mit einem vom Kunden verwalteten Wallet verarbeiten.
In diesen Schritten wird die Verwendung eines vom Kunden verwalteten Wallets mit UTL_HTTP
beschrieben. Die Schritte sind für die anderen unterstützten Packages identisch, einschließlich DMBS_LDAP
, UTL_SMTP
und UTL_TCP
.
Vorbereitende Schritte zur Verwendung eines vom Kunden verwalteten Wallets ausführen Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Besuchen.
So konfigurieren Sie eine Autonomous Database für die Verwendung eines vom Kunden verwalteten Wallets:
Übergeordnetes Thema: Externe Anrufe mit einem vom Kunden verwalteten Wallet tätigen
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.
Vorbereitende Schritte zur Verwendung eines vom Kunden verwalteten Wallets ausführen Weitere Informationen finden Sie unter Voraussetzungen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Besuchen.
So verwenden Sie ein vom Kunden verwaltetes Wallet mit dem Scheduler-E-Mail-Server:
Übergeordnetes Thema: Externe Anrufe mit einem vom Kunden verwalteten Wallet tätigen
Hinweise zur Verwendung eines vom Kunden verwalteten Wallets mit externen Aufrufen
Enthält Notizen für die Verwendung eines vom Kunden verwalteten Wallets mit externen Anrufen.
-
DBMS_CLOUD
-Anforderungen entsprechen nicht dem benutzerdefinierten 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. -
Bei
APEX_WEB_SERVICE
-Anforderungen wird das benutzerdefinierte Wallet, das Sie mitUTL_HTTP.set_wallet
festgelegt haben, nicht berücksichtigt.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 Einstellung für die Wallet-Pfadinstanz in APEX Administration Services fest.Weitere Informationen finden Sie unter Auf Oracle APEX Administration Services zugreifen.
-
Sowohl Wallets zur automatischen Anmeldung als auch kennwortgeschützte Wallets werden unterstützt. Wenn Sie ein Wallet mit automatischer Anmeldung verwenden, geben Sie
NULL
als Parameterwallet_password
an. -
Der aktuelle Benutzer, der die
UTL_HTTP.set_wallet
-API aufruft, muss überREAD
-Berechtigungen für das Directory-Objekt 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
angegeben wird (erteilt anPUBLIC
, einschließlich des BenutzersADMIN
).Beispiele:
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 bei der Verwendung von
UTL_HTTP.set_wallet
sicherzustellen, werden in Fällen, in denen der Wallet-Pfad ignoriert wird, Eingabewerte wiefile:
,NULL
usw. akzeptiert. Diese Werte werden ignoriert und geben an, dass der Standard-SSL-Wallet-Pfad mitUTL_HTTP.set_wallet
verwendet werden soll. -
Die ACL-APIs für das Wallet
DBMS_NETWORK_ACL_ADMIN
, wieAPPEND_WALLET_ACL
, werden unterstützt. Mit diesen Verfahren 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 haben. -
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
und die BerechtigungEXECUTE
für das Zugangsdatenobjekt festlegen, das Sie mitEMAIL_SERVER_WALLET_CREDENTIAL
festlegen.
-
Übergeordnetes Thema: Externe Anrufe mit einem vom Kunden verwalteten Wallet tätigen