Connessione ad Autonomous Database con autenticazione IAM (Identity and Access Management)
Dopo che l'utente ADMIN ha abilitato IAM di Oracle Cloud Infrastructure su Autonomous Database, gli utenti eseguono il login all'istanza di Autonomous Database utilizzando le proprie credenziali IAM di Oracle Cloud Infrastructure o accedono al database tramite un token di database IAM di Oracle Cloud Infrastructure.
Dopo aver abilitato l'accesso utente IAM di Oracle Cloud Infrastructure, puoi anche eseguire il login ad Autonomous Database utilizzando il nome utente e la password dell'account del database locale (account utente del database non globale).
È possibile utilizzare un client di database per accedere a un'istanza di Autonomous Database come utente IAM di Oracle Cloud Infrastructure. Per utilizzare un client con credenziali di nome utente e password IAM Oracle Cloud Infrastructure e un verificatore di password, il client del database deve essere 12c o più recente.
In alternativa, puoi utilizzare un token di database IAM Oracle Cloud Infrastructure per accedere a un'istanza di Autonomous Database. L'uso dei token IAM richiede il client Oracle Database più recente 19c (almeno la versione 19.16). Alcuni client precedenti offrono un set limitato di funzionalità per l'accesso ai token.
Gli esempi riportati di seguito mostrano il verificatore password con SQL*Plus per accedere al database con un nome utente e una password IAM Oracle Cloud Infrastructure e i passi necessari per utilizzare SQL*Plus con un token di database IAM Oracle Cloud Infrastructure.
Se l'istanza di Autonomous Database è in modalità limitata, solo gli utenti con il privilegio RESTRICTED SESSION
, ad esempio ADMIN, possono connettersi al database.
È possibile utilizzare un token di database IAM Oracle Cloud Infrastructure per accedere a un'istanza di Autonomous Database con i client supportati, inclusi i seguenti:
-
JDBC-Thin con supporto per l'autenticazione token IAM è supportato con quanto riportato di seguito.
-
Versione JDBC 19.13.0.0.1 (o successiva): per i driver JDBC, vedere Download JDBC e UCP.
-
Versione JDBC 21.4.0.0.1 (o successiva): per i driver JDBC, vedere Download JDBC e UCP.
Per ulteriori informazioni, vedere Supporto per l'autenticazione basata su token IAM:
-
- SQL*Plus e Oracle Instant Client: supportati con SQL*Plus e Instant Client su Linux versioni 19.13 o successive e Instant Client su Linux versioni 21.4 o successive.
Per ulteriori informazioni, vedere Autenticazione basata su token IAM (Identity and Access Management).
-
Il client di database può anche essere configurato per recuperare un token di database utilizzando il nome utente IAM e la password del database IAM.
Per ulteriori informazioni, vedere Connessioni client che utilizzano un token richiesto da un nome utente IAM e una password del database.
-
Client .NET (ultima versione di Linux o Windows). I componenti software .NET sono disponibili come download gratuito dai seguenti siti:
- Informazioni sulla connessione a un'istanza di Autonomous Database mediante IAM
Gli utenti IAM possono connettersi all'istanza di Autonomous Database utilizzando un verificatore password del database IAM o un token IAM. - Configurazione di una connessione client per SQL*Plus che utilizza una password di database IAM
È possibile configurare SQL*Plus in modo che utilizzi una password di database IAM. - Configurazione di una connessione client per SQL*Plus che utilizza un token IAM
È possibile configurare una connessione client per SQL*Plus che utilizza un token IAM. - Usa principal dell'istanza per accedere ad Autonomous Database con autenticazione IAM (Identity and Access Management)
Dopo che l'utente ADMIN abilita IAM Oracle Cloud Infrastructure su Autonomous Database, un'applicazione può accedere al database tramite un token di database IAM Oracle Cloud Infrastructure utilizzando un principal dell'istanza.
Informazioni sulla connessione a un'istanza di Autonomous Database mediante IAM
Gli utenti IAM possono connettersi all'istanza di Autonomous Database utilizzando un verificatore password del database IAM o un token IAM.
L'uso del verificatore password del database IAM è simile al processo di autenticazione delle password di Oracle Database. Tuttavia, invece di memorizzare il verificatore password (hash cifrato della password) nel database Oracle, il verificatore viene invece memorizzato come parte del profilo utente IAM Oracle Cloud Infrastructure (OCI).
Il secondo metodo di connessione, l'uso di un token IAM per il database, è più moderno. L'uso dell'accesso basato su token si adatta meglio alle risorse cloud come Autonomous Database. Il token si basa sulla forza che l'endpoint IAM può applicare. Questo può essere l'autenticazione a più fattori, che è più forte dell'uso delle sole password. Un altro vantaggio dell'utilizzo dei token è che il verificatore di password (che è considerato sensibile) non viene mai memorizzato o disponibile in memoria. Quando si utilizzano i token per l'accesso al database è necessaria una connessione TCPS (TLS).
Non è possibile configurare la cifratura di rete nativa quando si passa un token IAM. È supportata solo la TLS (Transport Layer Security) da sola, non la cifratura di rete nativa o la cifratura di rete nativa con TLS.
- Connessioni client che utilizzano un verificatore password database IAM
Dopo aver configurato l'autorizzazione necessaria per l'utente IAM, questo utente può eseguire il login utilizzando l'applicazione client esistente, ad esempio SQL*Plus o SQLcl senza configurazione aggiuntiva. - Connessioni client che utilizzano un token richiesto da un'applicazione o uno strumento client
Per l'accesso al token IAM all'Autonomous Database, l'applicazione o lo strumento client richiede un token di database da IAM per l'utente IAM.
Connessioni client che utilizzano un verificatore password database IAM
Dopo aver configurato l'autorizzazione necessaria per l'utente IAM, questo utente può eseguire il login utilizzando l'applicazione client esistente, ad esempio SQL*Plus o SQLcl, senza ulteriori configurazioni.
12C
. L'uso della cifratura del verificatore 11G
non è supportato con IAM. Non è necessaria alcuna configurazione speciale del client o dello strumento per consentire all'utente IAM di connettersi all'istanza DBaaS OCI.
Connessioni client che utilizzano un token richiesto da un'applicazione o uno strumento client
Per l'accesso del token IAM ad Autonomous Database, l'applicazione o lo strumento client richiede un token di database da IAM per l'utente IAM.
L'applicazione client passerà il token del database direttamente al client del database tramite l'API client del database.
Se l'applicazione o lo strumento non è stato aggiornato per richiedere un token IAM, l'utente IAM può utilizzare l'interfaccia della riga di comando (CLI) di Oracle Cloud Infrastructure (OCI) per richiedere e memorizzare il token del database. È possibile richiedere un token di accesso al database (db-token
) utilizzando le seguenti credenziali:
- Token di sicurezza (con autenticazione IAM), token di delega (nella cloud shell OCI) e
API-keys
, ovvero credenziali che rappresentano l'utente IAM per abilitare l'autenticazione - Token principal dell'istanza, che consentono agli attori (o ai principal) autorizzati di eseguire azioni sulle risorse del servizio dopo l'autenticazione
- Token di principal risorsa, una credenziale che consente all'applicazione di autenticarsi ad altri servizi Oracle Cloud Infrastructure
- Utilizzando un nome utente IAM e una password del database IAM (può essere richiesto solo dal client del database).
Quando gli utenti IAM eseguono il login al client con una barra di login /
e il parametro OCI_IAM
è configurato (sqlnet.ora
, tnsnames.ora
o come parte di una stringa di connessione), il client del database recupera il token di database da un file. Se l'utente IAM sottomette un nome utente e una password, la connessione utilizzerà l'accesso al verificatore del database IAM descritto per le connessioni client che utilizzano verificatori delle password del database IAM. Le istruzioni riportate in questa guida mostrano come utilizzare l'interfaccia CLI OCI come applicazione di supporto per il token di database. Se l'applicazione o lo strumento è stato aggiornato per funzionare con IAM, seguire le istruzioni per l'applicazione o lo strumento. Alcuni casi d'uso comuni includono: SQLPlus on-premise, SQLcl on-premise, SQL*Plus in Cloud Shell o applicazioni che utilizzano wallet SEP.
Configurazione di una connessione client per SQL*Plus che utilizza una password del database IAM
È possibile configurare SQL*Plus in modo che utilizzi una password di database IAM.
Configurazione di una connessione client per SQL*Plus che utilizza un token IAM
È possibile configurare una connessione client per SQL*Plus che utilizza un token IAM.
TOKEN_AUTH
, l'utente IAM può eseguire il login all'istanza di Autonomous Database eseguendo il comando riportato di seguito per avviare SQL*Plus. È possibile includere il descrittore di connessione stesso o utilizzare il nome del descrittore dal file tnsnames.ora
.connect /@exampledb_high
Oppure:
connect /@(description=
(retry_count=20)(retry_delay=3)
(address=(protocol=tcps)(port=1522)
(host=example.us-phoenix-1.oraclecloud.com))
(connect_data=(service_name=aaabbbccc_exampledb_high.example.oraclecloud.com))
(security=(ssl_server_cert_dn="CN=example.uscom-east-1.oraclecloud.com,
O=Example Corporation,
L=Redwood City, ST=California, C=US")
(TOKEN_AUTH=OCI_TOKEN)))
Il client di database è già configurato per ottenere un db-token
perché TOKEN_AUTH
è già stato impostato, tramite il file sqlnet.ora
o in una stringa di connessione. Il client di database ottiene db-token
e lo firma utilizzando la chiave privata, quindi invia il token ad Autonomous Database. Se vengono specificati un nome utente IAM e una password del database IAM anziché la barra /
, il client del database si connetterà utilizzando la password anziché utilizzare db-token
.
Utilizzare il principal dell'istanza per accedere ad Autonomous Database con l'autenticazione IAM (Identity and Access Management)
Dopo che l'utente ADMIN ha abilitato IAM di Oracle Cloud Infrastructure su Autonomous Database, un'applicazione può accedere al database tramite un token di database IAM di Oracle Cloud Infrastructure utilizzando un principal dell'istanza.
Per ulteriori informazioni, consulta la sezione relativa all'accesso all'API di Oracle Cloud Infrastructure utilizzando i principal delle istanze.