Nota:
- Questa esercitazione richiede l'accesso a Oracle Cloud. Per iscriversi a un account gratuito, consulta Inizia a utilizzare Oracle Cloud Infrastructure Free Tier.
- Utilizza valori di esempio per le credenziali, la tenancy e i compartimenti di Oracle Cloud Infrastructure. Al termine del laboratorio, sostituisci questi valori con quelli specifici del tuo ambiente cloud.
Utilizzare il pacchetto DBMS_CLOUD_NOTIFICATION per inviare un'e-mail da Oracle Autonomous Database
Introduzione
Oracle Autonomous Database offre un database facile da usare e completamente autonomo che si ridimensiona in modo elastico e garantisce prestazioni rapide per le query. In quanto servizio, Autonomous Database non richiede l'amministrazione del database.
Oracle Autonomous Database supporta il package DBMS_CLOUD_NOTIFICATION
per l'invio di messaggi e risultati di query sotto forma di e-mail. Questo package supporta l'invio di e-mail solo agli endpoint SMTP pubblici.
Nota: attualmente l'unico provider di posta elettronica supportato è il servizio di consegna tramite posta elettronica di Oracle Cloud Infrastructure (OCI).
Obiettivi
Per inviare messaggi e output di una query come e-mail da Oracle Autonomous Database utilizzando il pacchetto DBMS_CLOUD_NOTIFICATION
.
Prerequisiti
- Eseguire il login all'account Oracle Cloud.
- Creare un Autonomous Database (ADB-S) nel compartimento.
Task 1: identificazione e configurazione della connessione SMTP
-
Aprire il menu di navigazione e fare clic su Servizi per sviluppatori. In Integrazione applicazioni fare clic su Consegna tramite posta elettronica.
-
Nel menu Risorse fare clic su Configurazione.
-
Endpoint pubblico: endpoint pubblico utilizzato per inviare un messaggio e-mail a questa area.
-
Porte SMTP: porte SMTP utilizzate per accettare una posta elettronica. Il servizio di consegna tramite e-mail supporta TLS sulle porte 25 o 587.
-
Sicurezza: questo campo indica se viene utilizzato TLS, lo standard per l'esecuzione della cifratura in transito per i messaggi di posta elettronica. I clienti devono cifrare le e-mail mentre sono in transito nel servizio Oracle Cloud Infrastructure Email Delivery. I messaggi di posta elettronica cifrati non vengono letti durante il trasporto.
-
Task 2: Genera credenziali SMTP per consegna tramite e-mail
-
Visualizzare i dettagli utente.
- Se si stanno generando le credenziali SMTP per l'utente: aprire il menu Profilo e fare clic su Impostazioni utente oppure sul nome dell'account.
- Se si è un amministratore che genera le credenziali SMTP per un altro utente: aprire il menu di navigazione e fare clic su Identità e sicurezza. In Identità fare clic su Utenti. Individuare l'utente nell'elenco, quindi fare clic sul relativo nome per visualizzarne i dettagli.
-
Fare clic su Credenziali SMTP.
-
Fare clic su Genera credenziali SMTP.
-
Nella finestra di dialogo immettere la descrizione delle credenziali SMTP.
-
Fare clic su Genera credenziali SMTP. Viene visualizzato un nome utente e una password simili a quelli riportati di seguito.
Task 3: creare un mittente approvato per il servizio di consegna tramite e-mail
Registrare un indirizzo e-mail del mittente da utilizzare per la consegna delle e-mail.
-
Aprire il menu di navigazione e fare clic su Servizi per sviluppatori. In Integrazione applicazioni fare clic su Consegna tramite posta elettronica. In Consegna e-mail fare clic su Mittenti di posta elettronica approvati. Assicurarsi di trovarsi nel compartimento corretto. L'utente deve far parte di un gruppo che dispone delle autorizzazioni per gestire i provider approvati in questo compartimento.
-
Nella pagina Mittenti approvati fare clic su Mittente approvato.
-
Nella finestra di dialogo Crea mittente approvato, fornire le informazioni riportate di seguito.
- Inserire l'indirizzo e-mail che si desidera elencare come mittente approvato.
- (Facoltativo) Aggiungere le tag per organizzare la risorsa. Per applicare una tag definita, devi disporre delle autorizzazioni per usare lo spazio di nomi tag. Per ulteriori informazioni sull'applicazione di tag, consulta Resource Tags. Se non si è certi di applicare le tag, saltare questa opzione (è possibile applicare le tag in un secondo momento) o chiedere all'amministratore.
-
Fare clic su Crea mittente approvato.
-
L'indirizzo e-mail viene aggiunto all'elenco Mittenti approvati.
Nota:
In questo esempio viene utilizzato test.com come mittente di esempio, anche se durante la configurazione per l'invio di e-mail dal dominio della propria organizzazione, sarà necessario assicurarsi che sia impostata la configurazione di sicurezza e-mail appropriata per il servizio di consegna tramite e-mail OCI.
Le informazioni sulla configurazione di SPF e DKIM per il servizio di consegna tramite e-mail OCI sono disponibili qui (per SPF) e qui (per DKIM).
Task 4: inviare messaggi come e-mail da Oracle Autonomous Database
-
Eseguire il provisioning di Oracle Autonomous Database: andare alla pagina Dettagli e fare clic su Azioni database. Viene visualizzata una pagina di accesso per le azioni del database. Utilizzare l'account amministratore predefinito dell'istanza di database, Nome utente - Amministratore, quindi fare clic su Avanti. Viene visualizzata la pagina Azioni database. Nella casella Sviluppo fare clic su SQL.
-
Creare un oggetto credenziali e utilizzare
DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE
per inviare un messaggio come messaggio di posta elettronica. Copiare e incollare lo snippet di codice riportato di seguito nel foglio di lavoro SQL.BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'test', username => 'username', password => '************' ); END; / BEGIN DBMS_CLOUD_NOTIFICATION.SEND_MESSAGE( provider => 'email', credential_name => 'test', message => 'This message is to confirm that you have received an email from Autonomous Database', params => json_object('recipient' value '************', 'to_cc' value '************', 'to_bcc' value ‘************’, 'subject' value 'Test email', 'smtp_host' value 'smtp.email.us-phoenix-1.oci.oraclecloud.com', 'sender' value 'send.email@test.com' ) ); END; /
Utilizzare il parametro params per specificare il mittente, smtp_host, l'oggetto, il destinatario e i destinatari di un CC o Ccn nei valori stringa.
- mittente: l'ID di posta elettronica del mittente approvato.
- smtp_host: nome host SMTP
- Oggetto: l'oggetto dell'e-mail
- destinatario: ID e-mail dei destinatari
- to_cc: ID e-mail che ricevono un CC dell'e-mail.
- to_bcc: ID e-mail che ricevono un Ccn dell'e-mail.
-
Assicurarsi di fare clic sul pulsante Esegui istruzione per eseguirla nel foglio di lavoro SQL.
Una volta completata la procedura, si riceverà l'e-mail.
Task 5: inviare i risultati della query come e-mail da Oracle Autonomous Database
-
È possibile utilizzare il pacchetto
DBMS_CLOUD_NOTIFICATION
per inviare i risultati di una query come messaggio e-mail. Ad esempio, utilizzareDBMS_CLOUD_NOTIFICATION.SEND_MESSAGE
per inviare un messaggio con output di query: SELECT tablespace_name FROM dba_tablespaces; come e-mail. Copiare e incollare lo snippet di codice riportato di seguito nel foglio di lavoro SQL.BEGIN DBMS_CLOUD.CREATE_CREDENTIAL( credential_name => 'test', username => ‘username’ password => '************' ); END; / BEGIN DBMS_CLOUD_NOTIFICATION.SEND_DATA( provider => 'email', credential_name => 'test', query => 'SELECT tablespace_name FROM dba_tablespaces', params => json_object('recipient' value '************', 'to_cc' value '****************', 'to_bcc' value '****************', 'subject' value 'Tablespace Report', 'type' value 'json', 'title' value 'Tablespace report', 'message' value 'Here is the tablespace report', 'smtp_host' value 'smtp.email.us-phoenix-1.oci.oraclecloud.com', 'sender' value 'send.email@test.com' ) ); END; /
-
Assicurarsi di fare clic sul pulsante Esegui istruzione per eseguirla nel foglio di lavoro SQL.
Una volta completata la procedura, si riceverà l'e-mail.
Passi successivi
Il pacchetto DBMS_CLOUD_NOTIFICATION è ora supportato in Oracle Autonomous Database e abbiamo appena visto come inviare un messaggio di posta elettronica utilizzando questo pacchetto. Se desideri ulteriori informazioni su Consegna tramite e-mail o su DBMS_CLOUD_NOTIFICATION in Oracle Autonomous Database, consulta la documentazione di Oracle Autonomous Database.
Collegamenti correlati
- Invia e-mail con servizio di consegna tramite e-mail su Autonomous Database
- Invia e-mail con un provider di e-mail in un endpoint privato
- Invia notifiche Slack da Autonomous Database
- Invia notifiche di Microsoft Teams da Autonomous Database
Conferme
- Autore - Priya Dhuriya (Senior Solution Engineer)
Altre risorse di apprendimento
Esplora altri laboratori su docs.oracle.com/learn o accedi a contenuti di formazione gratuiti sul canale YouTube di Oracle Learning. Inoltre, visitare education.oracle.com/learning-explorer per diventare Explorer di Oracle Learning.
Per la documentazione sul prodotto, visitare il sito Oracle Help Center.
Use the DBMS_CLOUD_NOTIFICATION package to send an email from Oracle Autonomous Database
F85877-01
August 2023
Copyright © 2023, Oracle and/or its affiliates.