Informazioni sulla connessione a un'istanza di Autonomous Database

Dopo aver creato gli utenti del database, le applicazioni e gli strumenti si connettono ai database autonomi utilizzando Oracle Net Services (noto anche come SQL*Net). Oracle Net Services consente di stabilire una sessione di rete da un'applicazione client a un server Oracle Database.

Quando viene stabilita una sessione di rete, Oracle Net Services funge da vettore di dati sia per l'applicazione client che per il database. È responsabile della creazione e del mantenimento della connessione tra l'applicazione client e il database, nonché dello scambio di messaggi tra di loro.

Oracle Net Services supporta una vasta gamma di tipi di connessione per connettersi a un'istanza di Autonomous Database, tra cui:

  • Driver JDBC Thin: per le applicazioni Java, il driver JDBC Thin è un driver Java puro. Molte applicazioni, incluso Oracle SQL Developer, supportano le connessioni JDBC Thin Driver.

  • JDBC OCI: utilizzato dalle applicazioni di linguaggio Java. JDBC OCI aggiunge un layer a Oracle Call Interface per le applicazioni Java. L'interfaccia della riga di comando di Oracle SQLcl utilizza OCI JDBC.

  • Oracle Call Interface (OCI): viene utilizzata da molte applicazioni scritte in linguaggio C. Alcuni esempi di utilizzo di Oracle Call Interface includono le utility Oracle quali Oracle SQL*Plus, SQL*Loader e Oracle Data Pump.

  • Driver OBC: utilizzati dalle applicazioni in esecuzione su Microsoft Windows, su più livelli di Oracle Call Interface (OCI).

I prodotti e le applicazioni personalizzate di terze parti possono utilizzare questi tipi di connessione.

Temi

Connessioni sicure ad Autonomous Database con mTLS o con TLS

Le connessioni ad Autonomous Database vengono effettuate tramite la rete Internet pubblica, facoltativamente con le regole di controllo dell'accesso (ACL, Access Control Rules) definite o utilizzando un endpoint privato all'interno di una rete cloud virtuale (VCN, Virtual Cloud Network) nella tenancy.

Quando si specifica una configurazione di endpoint privato, questa opzione consente solo il traffico proveniente dalla rete cloud virtuale specificata e blocca l'accesso al database da tutti gli IP pubblici o VCN. La configurazione di un endpoint privato consente di mantenere tutto il traffico da e verso il database al di fuori della rete Internet pubblica. Con un endpoint privato, quando l'accesso pubblico è abilitato con Allow public access, l'istanza dispone sia di un endpoint privato che di un endpoint pubblico:

  • Il nome host privato, l'URL dell'endpoint e l'indirizzo IP privato consentono di connettersi al database dalla VCN in cui risiede il database.

  • Il nome host pubblico consente di connettersi al database da indirizzi IP pubblici specifici o da reti VCN specifiche se tali reti VCN sono configurate per connettersi in modo privato ad Autonomous Database utilizzando un gateway di servizi.

Molte applicazioni forniscono supporto per più tipi di connessione, ma ogni tipo di connessione ad Autonomous Database utilizza l'autenticazione dei certificati e la connessione al database TCPS (TCP sicuro) utilizzando TLS 1.2 standard. Ciò garantisce che non vi sia alcun accesso non autorizzato ad Autonomous Database e che le comunicazioni tra il client e il server siano completamente cifrate e non possano essere intercettate o modificate.

Per impostazione predefinita, Autonomous Database supporta le connessioni MTLS (Mutual TLS) (utilizzare la porta 1522 per connettersi a mTLS). Hai la possibilità di configurare un'istanza di Autonomous Database per supportare sia le connessioni mTLS che TLS (utilizzare la porta 1521 o 1522 per connettersi a TLS).

Esistono vantaggi per i client che utilizzano l'autenticazione TLS con Autonomous Database, inclusi i seguenti:

  • Le connessioni TLS non richiedono il download di un wallet. Per le connessioni TLS che utilizzano il driver thin JDBC con JDK8 o versione successiva, non è necessario un wallet. Sono incluse le connessioni provenienti dai client, ad esempio SQL Developer e SQL Command Line (SQLcl).

  • I client che si connettono a TLS non devono preoccuparsi della rotazione del wallet. La rotazione del wallet è una procedura regolare per le connessioni mTLS.

  • Le connessioni TLS possono essere più veloci, garantendo una minore latenza della connessione. L'autenticazione TLS può fornire una latenza di connessione ridotta rispetto a mTLS.

  • Le connessioni TLS e mTLS non si escludono a vicenda. L'autenticazione TLS reciproca (mTLS) è abilitata per impostazione predefinita e sempre disponibile. Quando si abilita l'autenticazione TLS, è possibile utilizzare l'autenticazione mTLS o TLS.

  • L'uso dell'autenticazione TLS non compromette la comunicazione end-to-end completamente cifrata tra un client e Autonomous Database.

Per informazioni dettagliate su come ottenere le stringhe di connessione mTLS per l'istanza di Autonomous Database, vedere Visualizza nomi e stringhe di connessione TNS per un'istanza di Autonomous Database.

Informazioni sull'autenticazione TLS reciproca (mTLS)

Utilizzando mTLS (Mutual Transport Layer Security), i client si connettono tramite una connessione al database TCPS (Secure TCP) utilizzando TLS standard 1.2 con un certificato di autorità di certificazione (CA) del client sicuro.

Con l'autenticazione reciproca, sia l'applicazione client che Autonomous Database si autenticano a vicenda. Autonomous Database utilizza l'autenticazione mTLS per impostazione predefinita. Utilizzare la porta 1522 per connettersi a un'istanza di Autonomous Database con mTLS (l'assegnazione della porta 1522 non può essere modificata).

L'autenticazione TLS reciproca richiede che il client scarichi o ottenga un certificato CA client sicuro per la connessione a un'istanza di Autonomous Database. Autonomous Database utilizza quindi il certificato per autenticare il client. Ciò garantisce una maggiore sicurezza e specifica i client in grado di comunicare con un'istanza di Autonomous Database.

L'autenticazione di certificazione con TLS reciproco utilizza una chiave cifrata memorizzata in un wallet sia sul client (in cui l'applicazione è in esecuzione) che sul server (in cui è in esecuzione il servizio di database in Autonomous Database). La chiave del client deve corrispondere alla chiave del server per stabilire una connessione. Un wallet contiene una raccolta di file, incluse la chiave e altre informazioni necessarie per connettersi all'istanza di Autonomous Database. Tutte le comunicazioni tra il client e il server vengono cifrate.

Per proteggere la connessione all'istanza di Autonomous Database, un amministratore del servizio scarica le credenziali client (file wallet) da Autonomous Database. Se non si è amministratori del servizio di Autonomous Database, l'amministratore fornisce le credenziali client. Per ulteriori informazioni, vedere Scarica credenziali client (wallet).

La figura seguente mostra le connessioni sicure client a Oracle Autonomous Database tramite la rete Internet pubblica mediante connessioni TLS reciproche. Se si configura il database in modo che utilizzi gli endpoint privati, la rete Internet pubblica non viene utilizzata e la connessione utilizza un endpoint privato all'interno di una rete cloud virtuale (VCN) nella tenancy.

Segue la descrizione di autonomous-database.eps
Descrizione dell'immagine autonomous-database.eps

Per informazioni dettagliate su come ottenere le stringhe di connessione mTLS per l'istanza di Autonomous Database, vedere Visualizza nomi e stringhe di connessione TNS per un'istanza di Autonomous Database.

Informazioni sull'autenticazione TLS

Utilizzando TLS (Transport Layer Security), i client si connettono tramite una connessione al database TCPS (Secure TCP) utilizzando lo standard TLS 1.2. Un client utilizza la propria lista di autorità di certificazione (CA) sicure per convalidare il certificato radice CA del server. Se l'autorità di certificazione emittente è attendibile, il client verifica che il certificato sia autentico.

Ciò consente al client e ad Autonomous Database di stabilire la connessione cifrata prima di scambiare eventuali messaggi. Utilizzare la porta 1521 o la porta 1522 per connettersi a un'istanza di Autonomous Database con TLS (queste assegnazioni di porte non possono essere modificate).

Quando ci si connette con l'autenticazione TLS utilizzando i client Thin Driver JDBC, inclusi Oracle SQL Developer e Oracle SQLcl, non è necessario scaricare un wallet per proteggere la connessione all'istanza di Autonomous Database. L'autenticazione TLS consente al client di verificare l'identità del servizio Autonomous Database per fornire una comunicazione sicura.

A seconda del tipo di client, una connessione TLS dispone del seguente supporto con Autonomous Database:

  • Per le connessioni con JDBC Thin Driver che utilizzano JDK8u162 o versioni successive, incluse le connessioni con Oracle SQL Developer e Oracle SQLcl, non è necessario un wallet.

  • I client Oracle Call Interface (OCI) supportano l'autenticazione TLS senza un wallet se si utilizzano le seguenti versioni client:

    • Oracle Instant Client/Oracle Database Client 19.13 - solo su Linux x64

    • Oracle Instant Client/Oracle Database Client 19.14 (o versioni successive) e 21.5 (o versioni successive): solo su Linux x64 e Windows

  • Se il client si connette con la versione ODP.NET o ODP.NET Core gestita 19.13 o 21.4 (o successiva) utilizzando l'autenticazione TLS, il client può connettersi senza fornire un wallet.

Esistono prerequisiti per l'accesso alla rete per le connessioni TLS. Per ulteriori informazioni, vedere Prerequisiti di accesso di rete per le connessioni TLS.

Per informazioni dettagliate su come ottenere le stringhe di connessione TLS per l'istanza di Autonomous Database, vedere Visualizza nomi e stringhe di connessione TNS per un'istanza di Autonomous Database.

Connessione ad Autonomous Database mediante un firewall

La maggior parte delle organizzazioni protegge reti e dispositivi su una rete utilizzando un firewall. Un firewall controlla il traffico di rete in entrata e in uscita utilizzando regole che consentono l'uso di determinate porte e l'accesso a determinati computer (o, più specificamente, indirizzi IP o nomi host). Una funzione importante di un firewall è quella di fornire la separazione tra le reti interne e l'Internet pubblico.

Quando Autonomous Database è configurato per l'accesso mediante la rete Internet pubblica, è necessario configurare il firewall per consentire l'accesso ai server Autonomous Database.

Per accedere ad Autonomous Database da un firewall, il firewall deve consentire l'uso della porta specificata nella connessione al database durante la connessione ai server nella connessione. Utilizzare la porta 1522 per le connessioni mTLS di Autonomous Database (è possibile vedere il numero di porta nella stringa di connessione dal file tnsnames.ora nel file credentials ZIP). Ad esempio, vedere il valore port nel file tnsnames.ora seguente:

db2022adb_high = (description = ( 
                address=(protocol=tcps)
                (port=1522)
                (host=adb.example.oraclecloud.com))
                (connect_data=(service_name=example_high.adb.oraclecloud.com))
                (security=(ssl_server_dn_match=yes)))

Il firewall deve consentire l'accesso ai server all'interno del dominio .oraclecloud.com utilizzando la porta 1522. Per connettersi ad Autonomous Database, a seconda della configurazione di rete dell'organizzazione, potrebbe essere necessario utilizzare un server proxy per accedere a questa porta oppure potrebbe essere necessario richiedere all'amministratore di rete di aprire questa porta.

Per informazioni sugli intervalli di indirizzi IP pubblici in Oracle Cloud Infrastructure, vedere Intervalli di indirizzi IP. È necessario consentire il traffico a questi blocchi CIDR per garantire l'accesso a un'istanza di Autonomous Database in un endpoint pubblico.

Uso della continuità di applicazione

La continuità di applicazione maschera le indisponibilità da parte degli utenti finali e delle applicazioni recuperando il lavoro in corso per le sessioni di database interessate in seguito a interruzioni. La continuità di applicazione esegue questo recupero sotto l'applicazione in modo che l'indisponibilità venga visualizzata nell'applicazione come un'esecuzione leggermente ritardata.

Nota

Per impostazione predefinita, la continuità di applicazione è disabilitata.

Per ulteriori informazioni sulla continuità di applicazione, vedere Usa la continuità di applicazione in Autonomous Database.