Gestisci credenziali

È possibile creare credenziali, elencare le credenziali o eliminare le credenziali in Autonomous Database.

Creare le credenziali per accedere ai servizi cloud

Per accedere ai servizi nel cloud, ad esempio l'area di memorizzazione degli oggetti cloud, devi prima creare le credenziali nell'Autonomous Database.

  1. Creare e memorizzare le credenziali utilizzando la procedura DBMS_CLOUD.CREATE_CREDENTIAL. Ad esempio:
    SET DEFINE OFF
    BEGIN
      DBMS_CLOUD.CREATE_CREDENTIAL(
        credential_name => 'DEF_CRED_NAME',
        username => 'adb_user@example.com',
        password => 'password',
        comments => 'credential to access object store'
      );
    END;
    /

    Questa operazione memorizza le credenziali nel database in un formato cifrato. È possibile utilizzare qualsiasi nome per il nome della credenziale. Tenere presente che questo passo è obbligatorio una sola volta a meno che le credenziali dell'area di memorizzazione degli oggetti non vengano modificate. Dopo aver memorizzato le credenziali, è possibile utilizzare lo stesso nome credenziale per tutti i caricamenti dati.

    Per informazioni dettagliate sui parametri, vedere CREATE_CREDENTIAL Procedure.

    La creazione di una credenziale per accedere all'area di memorizzazione degli oggetti di Oracle Cloud Infrastructure non è necessaria se si abilitano le credenziali del principal risorsa. Per ulteriori informazioni, consulta la sezione Usa principal risorsa per accedere alle risorse di Oracle Cloud Infrastructure.

    Nota

    Alcuni strumenti come SQL*Plus e SQL Developer utilizzano il carattere e commerciale (&) come carattere speciale. Se si dispone del carattere e commerciale nella password, utilizzare il comando SET DEFINE OFF in tali strumenti come mostrato nell'esempio per disabilitare il carattere speciale e ottenere la credenziale creata correttamente.
  2. Con le credenziali create nel Passo 1, puoi accedere all'area di memorizzazione degli oggetti o ad altre risorse cloud da Autonomous Database utilizzando una procedura come DBMS_CLOUD.COPY_DATA, DBMS_CLOUD.EXPORT_DATA, DBMS_CLOUD_PIPELINE se stai utilizzando una pipeline di dati o altre procedure che richiedono credenziali DBMS_CLOUD.

Creare le credenziali per accedere ai servizi cloud in Cloud Shell

Utilizza Cloud Shell per eseguire uno script che crea credenziali e token di autenticazione nativi OCI nell'Autonomous Database.

Per creare le credenziali utilizzando il package DBMS_CLOUD, vedere Creare le credenziali per accedere ai servizi cloud e Procedura CREATE_CREDENTIAL.

Informazioni sullo script Crea Cloud Shell delle credenziali

Eseguire lo script Crea Cloud Shell credenziali nello strumento di sviluppo di Cloud Shell per generare gli script delle credenziali da eseguire in Autonomous Database.

Utilizzare lo script Crea credenziale, adb-create-cred.sh, per creare nuove credenziali o riutilizzare le credenziali native OCI esistenti, inclusa una coppia di chiavi RSA con un'impronta digitale. Le credenziali vengono fornite all'utente sotto forma di script, oci_native_credential.sql e oci_native_credential.json, che possono essere eseguiti in Autonomous Database. Viene eseguito il backup delle credenziali esistenti se vengono create nuove credenziali.

Utilizzare lo script adb-create-cred.sh per eseguire gli script delle credenziali generate in Autonomous Database o uscire dal programma ed eseguire gli script nel database con uno strumento o una utility compatibile con SQL o JSON di propria scelta. Per ulteriori informazioni ed esempi, vedere Esempio: creazione di credenziali native OCI ed Esempio: creazione di credenziali native OCI ed esecuzione in Autonomous Database.

Facoltativamente, adb-create-cred.sh viene utilizzato per creare le credenziali Token di autenticazione/Swift. Oracle consiglia l'uso delle credenziali native OCI. Tuttavia, se si desidera creare una credenziale Token di autenticazione/Swift, questa credenziale è supportata da questo script shell. Per ulteriori informazioni, vedere Crea token di autenticazione utilizzato per la credenziale Swift.

Nota

Se non si dispone dell'accesso allo strumento di sviluppo Cloud Shell, creare le credenziali native OCI senza utilizzare lo script adb-create-cred.sh. Per i dettagli, consulta la sezione Crea credenziali native di Oracle Cloud Infrastructure.

Esempio: creazione delle credenziali native OCI

In questo esempio viene utilizzato Cloud Shell per eseguire lo script Crea credenziale per creare script delle credenziali native OCI.

Eseguire adb-create-cred.sh per generare gli script delle credenziali, oci_native_cred.sql e oci_native_cred.json. Lo script adb-create-cred.sh cerca le credenziali esistenti, se trovate, se si desidera riutilizzarle o se si desidera creare nuove credenziali. A seconda della decisione presa, gli script delle credenziali generate includono credenziali nuove o esistenti. Scarica lo script delle credenziali native OCI o copialo per eseguirlo direttamente nel database utilizzando qualsiasi strumento o utility SQL o JSON.

Nota

Per un elenco di argomenti supportati dallo script Crea credenziale, immettere adb-create-cred.sh --help.

In questo esempio, gli script delle credenziali native OCI vengono generati per la tenancy senza eseguirli nel database. Consulta l'Esempio: creazione delle credenziali native OCI ed esecuzione in Autonomous Database, per un esempio di esecuzione dello script delle credenziali native OCI nel database.

  1. Connettersi alla tenancy, selezionare l'icona Strumenti per sviluppatori e fare clic su Cloud Shell dall'elenco a discesa.
  2. Eseguire lo script adb-create-cred.sh.
  3. Immettere y per riutilizzare le credenziali esistenti nello script delle credenziali native OCI generato.


    Segue la descrizione di cs_existing.png
    Descrizione dell'immagine cs_existing.png

    Se si sceglie di creare nuove credenziali e si decide di sovrascrivere le credenziali che si desidera utilizzare per le credenziali sovrascritte, tornare alla directory in cui si trova il backup e riutilizzarle. Il nome o la cartella del file di backup contiene un suffisso con la seguente sintassi: _bkp_YYYYMMDD_abc. Ad esempio, questo file di backup è stato creato il 06 giugno 2024: _bkp_20240603_woT.

  4. Immettere n per uscire dallo script senza eseguire lo script delle credenziali native OCI nel database.
  5. Il programma esce e visualizza il nome della credenziale nativa OCI e il comando per visualizzarla.


    Segue la descrizione di cs_exit_script.png
    Descrizione dell'immagine cs_exit_script.png

    Scarica lo script delle credenziali native OCI o copialo ed eseguilo direttamente nel database utilizzando qualsiasi strumento SQL.

Esempio: creazione delle credenziali native OCI ed esecuzione in Autonomous Database

In questo esempio viene utilizzato lo script Crea credenziale per creare uno script delle credenziali native OCI eseguito in Autonomous Database.

Prima di eseguire lo script, considerare quanto riportato di seguito.
  • (Facoltativo) Fornire l'area del database, il compartimento e il nome del database per evitare di eseguire la ricerca dello script per il database. Sebbene queste opzioni non siano necessarie, possono risparmiare tempo di elaborazione, in particolare sulle tenancy che si estendono su una moltitudine di compartimenti e database autonomi.
  • Lo script presuppone che il database si trovi nell'area di origine. Se si trova in un'area diversa, è necessario passare l'argomento del nome dell'area, --region, quando si esegue lo script.
  • Se non si fornisce il compartimento (--compartimento) o il nome del database (--database), lo script cerca i possibili candidati e richiede di effettuare una selezione dalle liste di possibili compartimenti e database.
  • Per elencare le opzioni disponibili, immettere -h o --help.

Nell'esempio seguente, lo script Crea credenziale nativa OCI, adb-create-cred.sh, viene utilizzato per generare uno script di credenziali con credenziali esistenti ed eseguire lo script in un database specificato.

L'area, il compartimento e il nome del database vengono passati come argomenti allo script. L'opzione --database richiede sia --region che --compartment. Se si specifica solo --database senza questi valori, l'opzione viene ignorata.

Viene inoltre fornito il nome utente utilizzato per connettersi al database insieme a un nome per la credenziale creata.
Nota

Per un elenco di argomenti supportati dallo script Crea credenziale, immettere adb-create-cred.sh --help.
  1. Connettersi alla tenancy, selezionare l'icona Strumenti per sviluppatori e fare clic su Cloud Shell dall'elenco a discesa.
  2. Eseguire lo script adb-create-cred.sh, inclusi gli argomenti utilizzati per individuare il database, connettersi al database e un nome di credenziale specificato dall'utente.
  3. Sono state trovate chiavi API e impronte digitali esistenti. Immettere y per riutilizzarli negli script delle credenziali generate.


    Segue la descrizione di cs_existing_keys.png
    Descrizione dell'immagine cs_existing_keys.png

    Se si sceglie di creare nuove credenziali e si decide di sovrascrivere le credenziali che si desidera utilizzare, è possibile tornare alla directory in cui si trova il backup e riutilizzarle. Il nome o la cartella del file di backup contiene un suffisso con la seguente sintassi: _bkp_YYYYMMDD_abc. Ad esempio, questo file di backup è stato creato il 06 giugno 2024: _bkp_20240603_woT.

  4. Immettere y per eseguire lo script delle credenziali creato, oci_native_credential.sql, nel database specificato con l'area, il compartimento e gli argomenti del database.
  5. File wallet non trovato, pertanto è stato impostato. Se è stato trovato un file wallet, viene chiesto se si desidera riutilizzarlo o impostarne uno nuovo. Immettere il password per il nome utente ADMIN fornito. Il nome utente e la password vengono utilizzati per connettersi al database.


    Segue la descrizione di cs_pass.png
    Descrizione dell'immagine cs_pass.png

    Nota

    Se si dispone di un endpoint privato di Autonomous Database in una rete cloud virtuale, lo script adb-create-cred.sh genera gli script SQL e JSON. Tuttavia, non esegue i passi necessari per accedere all'endpoint privato di Autonomous Database. In alternativa, viene richiesto di eseguire cat ~/oci_native_credential.sql per copiare l'istruzione SQL in qualsiasi strumento SQL a cui si ha accesso tramite un bastion o un host Jump.

  6. Login riuscito e la credenziale MYOCICRED viene creata nel database specificato. Le credenziali esistenti vengono eliminate e vengono create nuove credenziali. Immettere n per non eseguire le credenziali in un altro database. Lo script esiste e fornisce il percorso per lo script oci_native_credential.sql creato.


    Nota

    Se la connessione ad Autonomous Database non riesce, è possibile eseguire cat ~/oci_native_credential.sql e copiare l'istruzione SQL per eseguirla direttamente nel database utilizzando qualsiasi strumento SQL.

Crea token di autenticazione utilizzato per la credenziale Swift

Se si desidera creare un token di autenticazione/credenziale SWIFT, anche se Oracle consiglia di utilizzare le credenziali native OCI, includere l'argomento --all durante l'esecuzione dello script per generare le credenziali native OCI e il token di autenticazione/credenziale SWIFT.

Ad esempio:
adb-create-cred.sh --all

Quando si utilizza questo flag, lo script chiede se si desidera includere un token di autenticazione. Se si risponde y, la chiave token di autenticazione viene generata e caricata nel profilo OCI e vengono creati gli script oci_auth_token_credential.sql e auth_token.tok.

Sono disponibili 2 opzioni che è possibile utilizzare per visualizzare la chiave token di autenticazione:
  • Eseguire lo script oci_auth_token_credential.sql da Cloud Shell per creare la chiave token di autenticazione nel database. La chiave token di autenticazione è il valore del parametro password per DBMS_CLOUD_CREATE_CREDENTIAL.
  • Visualizzare auth_token.tok da Cloud Shell. Il token di autenticazione è il valore di token.

Elenca credenziali

DBMS_CLOUD consente di memorizzare le credenziali utilizzando la procedura DBMS_CLOUD.CREATE_CREDENTIAL. È possibile elencare le credenziali dalla vista ALL_CREDENTIALS.

Ad esempio, per elencare le credenziali, eseguire il comando seguente:

SELECT credential_name, username, comments FROM all_credentials;

CREDENTIAL_NAME                                            USERNAME    
---------------------------–-----------------------------  --------------------
COMMENTS
---------------------------–-----------------------------  --------------------
ADB_TOKEN                                                  user_name@example.com
{"comments":"Created via DBMS_CLOUD.create_credential"}
DEF_CRED_NAME                                              user_name@example.com
{"comments":"Created via DBMS_CLOUD.create_credential"}
 

Per ulteriori informazioni, vedere ALL_CREDENTIALS.

Elimina credenziali

DBMS_CLOUD consente di memorizzare le credenziali utilizzando la procedura DBMS_CLOUD.CREATE_CREDENTIAL. È possibile rimuovere le credenziali con DBMS_CLOUD.DROP_CREDENTIAL.

Ad esempio, per rimuovere la credenziale denominata DEF_CRED_NAME, eseguire il comando seguente:

BEGIN
   DBMS_CLOUD.DROP_CREDENTIAL('DEF_CRED_NAME');
END;

Per ulteriori informazioni sulle procedure e i parametri DBMS_CLOUD, vedere DBMS_CLOUD Subprogrammi e API REST.