Impostare il controllo dell'accesso basato sui ruoli automaticamente utilizzando uno script

Configura il controllo dell'accesso basato sui ruoli (RBAC) per l'autenticazione IAM automaticamente utilizzando uno script in Oracle Cloud Infrastructure.

È possibile eseguire lo script in Cloud Shell per generare rapidamente i file delle connessioni IAM. Questo processo di automazione riduce notevolmente il tempo necessario per eseguire la configurazione RBAC dettagliata. Dopo aver generato il file Connessioni, un utente amministratore può condividerlo all'interno dell'organizzazione per consentire l'accesso al database da Add-in foglio di calcolo.

Nella sezione seguente viene descritto come effettuare le operazioni riportate di seguito.

  • Generare il file Connessioni utilizzando uno script

  • Scaricare il file Connessioni

  • Consenti accesso per gli utenti del dominio

Prerequisiti

Per utilizzare lo script per la configurazione RBAC, è necessario disporre dei seguenti elementi:

  • Un account Admin in Oracle Cloud Infrastructure

  • Un dominio IAM

  • Istanza e schema di un database AI autonomo

Genera file connessioni utilizzando lo script

Nota

Sebbene lo script esegua automaticamente i task di configurazione, si tratta di uno script interattivo che richiede l'input dell'utente per continuare.

Eseguire il login alla console di Oracle Cloud Infrastructure, se non è già stato eseguito il login, ed effettuare le operazioni riportate di seguito.

  1. Dall'icona Strumenti di sviluppo accanto all'area, aprire Cloud Shell ed eseguire il file di script nella finestra del terminale.

    adb-create-cred.sh
  2. Lo script rileva se l'account cloud Oracle dispone di una chiave API e di un'impronta digitale esistenti. Se non viene trovato, lo script crea automaticamente una coppia di chiavi.

    You have an existing API Key and Fingerprint! Do you want to try to reuse them? (y/n): y

    Premere y per riutilizzare i tasti esistenti. Lo script crea la credenziale nativa nei file SQL e JSON. Per generare una nuova coppia di chiavi API, premere n.

  3. Lo script consente di generare un profilo AI per il database.

    Proceed to generate the AI Profile script? (y/n): n

    In questo esempio, premere n per procedere senza il profilo AI.

  4. Genera connessioni IAM per componenti aggiuntivi foglio di calcolo.

    Proceed to generate the Spreadsheet add-ins IAM connection? (y/n): y

    Premere y per continuare.

  5. Selezionare il dominio con gli utenti che si desidera consentire di connettersi all'istanza di database. Immettere il numero corrispondente nei domini disponibili.

    Select a domain (1-3):
    Lo script crea gli elementi indicati di seguito.
    • Attributo personalizzato utente denominato RBAC Spreadsheet Add-in

    • Un'applicazione integrata di dominio denominata Add-in foglio di calcolo

    • Una richiesta personalizzata JWT

    Lo script genera anche uno script PL/SQL, create_jwt_profile.sql, contenente informazioni sul profilo JWT.

    Nota

    È possibile riutilizzare l'attributo utente esistente e la richiesta personalizzata oppure crearne di nuovi utilizzando lo script. Se esiste già un'applicazione integrata, è possibile crearne una nuova, ma tutte le vecchie connessioni utilizzate dall'applicazione non saranno più valide.

  6. Eseguire lo script delle credenziali per lo schema richiesto nel database AI autonomo.

    Proceed to run the Credential Scripts on your Autonomous Database? (y/n): y

    Premere y per continuare.

  7. Selezionare il compartimento e il database in cui risiede lo schema.

    Select the number pertaining to your Compartment:
    ...
    Select the number pertaining to your Autonomous Database:
  8. È possibile utilizzare un wallet cloud esistente o crearne uno nuovo, se necessario. Se lo script rileva un wallet cloud esistente, chiede se si desidera riutilizzarlo.

    You have an existing Wallet File for [DB_NAME]. Do you want to reuse it? (y/n):

    Se un wallet non esiste, è possibile impostarne uno nuovo.

  9. Specificare le credenziali di login per lo schema che si desidera consentire la connessione a RBAC.

    Enter Autonomous Database username (ADMIN):
    Enter Autonomous Database password:
    Lo script esegue il file SQL contenente le informazioni sul profilo JWT create in precedenza e genera un file Connessioni IAM in formato JSON nella cartella home.
    Spreadsheet connection file: [$HOME/iam_connection_[DB_NAME]_[schema].json] created.

    Nota

    È possibile copiare il nome del file Connessioni, esclusa la parte $HOME/, e utilizzare lo stesso nome durante il download del file. Se lo script è ancora in esecuzione, l'utilizzo di Ctrl + C per la copia potrebbe interrompere o interrompere forzatamente lo script.

  10. Infine, lo script richiede se si desidera ripetere i passi e creare il file Connessioni per un altro database o uscire dallo script. È pertanto possibile impostare l'accesso utente del dominio per più schemi.

Scarica il file Connessioni

  1. Nella finestra Cloud Shell fare clic sull'icona a forma di ingranaggio per aprire il menu Cloud Shell e fare clic su Scarica.

  2. È possibile incollare lo stesso nome file copiato in precedenza o specificare un nuovo nome per il file Connessioni in formato JSON.

  3. Fare clic su Scarica nella finestra del messaggio per scaricare il file Connessioni.

È possibile utilizzare il file Connessioni in Add-in foglio di calcolo per connettersi al database e condividerlo con altri utenti.

Consenti accesso per utenti dominio

Eseguire il login alla console di Oracle Cloud Infrastructure, se non è già stato eseguito il login, ed effettuare le operazioni riportate di seguito.

  1. Fare clic sul menu hamburger, quindi andare a Identità e sicurezza e selezionare Domini.

  2. In Nome fare clic sul dominio per il quale è stato creato il file Connessioni, ad esempio Predefinito.

  3. Andare alla scheda Gestione utenti e fare clic sul nome utente per il quale si desidera consentire l'accesso.

  4. Fare clic su Modifica utente per modificare le informazioni sull'utente.

  5. Scorrere fino alla sezione Altre informazioni. Nel campo RBAC add-in foglio di calcolo immettere SQL Developer.

  6. Fare clic su Salva modifiche per aggiungere il ruolo all'utente.

A partire da ORDS 26.2, i ruoli ORDS sono disabilitati per impostazione predefinita. Per utilizzare un ruolo ORDS, è necessario abilitare il ruolo. Ad esempio:

BEGIN
    ords.set_property(
      p_key   => 'security.jwt.profile.allowed.roles',
      p_value => 'SQL Developer'
    );
    COMMIT;
  END;
/

Per ulteriori informazioni sui ruoli utente ORDS, vedere Informazioni sui ruoli utente di Oracle REST Data Services.