Scelta e implementazione della distribuzione

Utilizzare i metodi descritti in questa sezione per proteggere Oracle Autonomous Database Serverless@Azure:

  1. Usare la cifratura dei dati trasparente e Key Vault di Azure
  2. Configurare e abilitare Oracle Database Vault
  3. Registra il database con Oracle Data Safe
  4. Centralizzare l'autenticazione e l'autorizzazione degli utenti mediante l'integrazione con Entra ID
  5. Unifica la pipeline di audit e database per esportare i dati in Azure Blob Storage
  6. Usa Oracle SQL Firewall per Oracle Database 23ai

Opzione 1: Usa Transparent Data Encryption e Azure Key Vault

Oracle Transparent Data Encryption (TDE) è configurato e abilitato per impostazione predefinita in tutti i database Oracle Autonomous Database Serverless.

I passi riportati di seguito mostrano come convalidare l'impostazione TDE predefinita. Successivamente, illustrerà i passi per l'implementazione della cifratura gestita dai clienti con Azure Key Vault per Oracle Autonomous Database Serverless.



adbs-chiave-vault-arch-oracle.zip

Per implementare il piano presentato qui, è necessario prima soddisfare i seguenti prerequisiti:

  • Implementa l'istanza di Oracle Autonomous Database Serverless utilizzando Microsoft Azure Console
  • Creare il vault di chiavi Azure (standard o premium)
  • Creare una chiave RSA a 2048 bit in Azure Key Vault
  • Crea un principal del servizio per Autonomous Database

Per utilizzare il vault di chiavi TDE e Azure, effettuare le operazioni riportate di seguito.

  1. Assegnare i criteri di accesso vault del principal del servizio al principal del servizio azure per l'istanza di Oracle Autonomous Database Serverless:
    1. Andare all'istanza di Azure Key Vault.
    2. Fare clic su Impostazioni, quindi su Accedi a configurazione.
    3. Fare clic su Criterio di accesso al vault.
    4. Fare clic su Vai ai criteri di accesso.
  2. Creare il criterio di accesso al vault:
    1. Selezionare le autorizzazioni:
      • Recupera
      • List
      • Cifra
      • Sign
      • Verifica
    2. Fare clic su Avanti.
  3. Selezionare il principal del servizio creato per l'istanza di Oracle Autonomous Database Serverless
    1. Continuare a fare clic su Successivo fino a quando non si arriva a Revisione e creazione.
    2. Fare clic su Crea.
  4. Raccogliere le seguenti informazioni da utilizzare in Oracle Cloud Infrastructure (OCI) per configurare Oracle Autonomous Database Serverless per la gestione delle chiavi.
    • URI del vault
    • Nome chiave
  5. Copiare il nome della chiave dall'istanza di Azure Key Vault.
  6. In OCI, vai alla tua istanza di Oracle Autonomous Database Serverless.
    1. Fare clic su Altre azioni.
    2. Fare clic su Gestisci chiave di cifratura.
    3. Fare clic su Cifra mediante una chiave gestita dal cliente.
    4. Dal menu Tipo di chiave, selezionare Azure.
    5. Inserire le informazioni di Azure nei campi riportati di seguito.
      • URI vault (Non includere una barra finale)
      • Nome chiave
    6. Fare clic su Save.
      L'aggiornamento di Autonomous Database richiederà alcuni istanti quando verrà nuovamente visualizzato Disponibile e sarà possibile visualizzare la nuova chiave assegnata nei dettagli di Autonomous Database.

      La cronologia delle chiavi dovrebbe inoltre mostrare che la chiave gestita dal cliente (Microsoft Azure) è ora la chiave di cifratura principale utilizzata per TDE.

  7. Accedere al database come amministratore e convalidare TDE.

    Aprire il client di database e connettersi al database di cui è stato appena eseguito il provisioning. Una volta connesso, utilizzare CloudShell o simile per eseguire questa query SQL per verificare che il database disponga di una chiave principale TDE e che le tablespace siano cifrate utilizzando AES256.

    SQL> set page 900
    SQL> set linesize 900
    column activation_time format a40
    column tag format a150
    column pdb_name format a40
    column tablespace_name format a30
    column algorithm format a10SP2-0158: unknown SET option "page"
    SQL> SQL> SQL> SQL> SQL> SQL>
    SQL> select KEY_ID,ACTIVATION_TIME,KEY_USE from V$ENCRYPTION_KEYS;
    
    KEY_ID
    ------------------------------------------------------------
    ACTIVATION_TIME                          KEY_USE
    ---------------------------------------- -----------------
    ATAQECQ0Q8NaSEBa0dDOQ8EPMAAAAAAAAAAAAAAAAAA== 06-MAY-25 01.41.04.516182 PM +00:00  TDE IN PDB
    AVAK/QOQ6Bac3xAJEBAQDAUAAAAAAAAAAAAAAAAAAA== 06-MAY-25 01.58.34.616781 PM +00:00  TDE IN PDB
    
    SQL> select a.name pdb_name, b.name tablespace_name, c.ENCRYPTIONALG algorithm
      2    from v$pdbs a, v$tablespace b, v$encrypted_tablespaces c
      3   where a.con_id = b.con_id
      4     and b.con_id = c.con_id
      5     and b.ts# = c.ts#;
         2    3    4    5
    
    PDB_NAME                                 TABLESPACE_NAME                ALGORITHM
    ---------------------------------------- ------------------------------ ----------
    G283BFEA6ED35C8_MULTICLOUDWEBINAR01      SYSTEM                         AES256
    G283BFEA6ED35C8_MULTICLOUDWEBINAR01      SYSAUX                         AES256
    G283BFEA6ED35C8_MULTICLOUDWEBINAR01      UNDOTBS1                       AES256
    G283BFEA6ED35C8_MULTICLOUDWEBINAR01      USERS                          AES256
    G283BFEA6ED35C8_MULTICLOUDWEBINAR01      DBFS_DATA                      AES256
    G283BFEA6ED35C8_MULTICLOUDWEBINAR01      TEMP                           AES256
    
    6 rows selected.
    
    SQL>

Opzione 2: configurare e abilitare Oracle Database Vault

Configurare e abilitare Oracle Database Vault nell'istanza di Oracle Autonomous Database Serverless per proteggere i dati dall'accesso non autorizzato agli account con privilegi.

È necessario creare alcuni account di database aggiuntivi per facilitare la separazione dei compiti per Oracle Database Vault. Dopo l'abilitazione di Oracle Database Vault, creare un realm di Oracle Database Vault per separare i dati riservati dagli account con privilegi elevati all'interno del database.

Per configurare e abilitare Oracle Database Vault, effettuare le operazioni riportate di seguito.

  1. Creare gli account necessari per la configurazione di Oracle Database Vault.

    Oracle consiglia di creare più account per assicurarsi di non essere mai bloccati dai dati. Perdere la password per questi account potrebbe rendere i tuoi dati inaccessibili.

    Accedere al database Oracle Autonomous Database Serverless e creare quattro account di database: a due account verrà assegnato il ruolo Proprietario di Database Vault e a due account verrà assegnato il ruolo Account Manager di Database Vault.

    Utilizzare il codice di esempio seguente per creare gli account in cui <user_name> è il nome utilizzato per identificare l'account associato.

    Connected to:
    Oracle Database 23ai Enterprise Edition Release 23.0.0.0.0 - for Oracle Cloud and Engineered Systems
    Version 23.8.0.25.05
    
    SQL> create user DBOWNER identified by "<user_name>";
    User created.
    
    SQL> create user DBVACCTMGR identified by "<user_name>";
    User created.
    
    SQL> create user DBOWNER_BACKUP identified by "<user_name>";
    User created.
    
    SQL> create user DBVACCTMGR_BACKUP identified by "<user_name>";
    User created.
    
    SQL> grant connect, resource to DBOWNER;
    Grant succeeded.
    
    SQL> grant connect, resource to DBOWNER_BACKUP;
    Grant succeeded.
    
    SQL> grant connect, resource to DBVACCTMGR;
    Grant succeeded.
    
    SQL> grant connect, resource to DBVACCTMGR_BACKUP;
    Grant succeeded.
    
    SQL> show con_name;
    
    CON_NAME
    ------------------------------
    G283BFEA6ED35C8_MULTICLOUDWEBI
    NAR01
    
    SQL> select * from dba_dv_status;
    
    NAME                STATUS
    ------------------  ----------------
    DV_APP_PROTECTION   NOT CONFIGURED
    DV_CONFIGURE_STATUS FALSE
    DV_ENABLE_STATUS    FALSE
    SQL>
    
  2. Configurare e abilitare Oracle Database Vault.
    1. Eseguire il login al database come admin ed eseguire il package seguente per configurare Oracle Database Vault.
      SQL>
      SQL> EXEC DBMS_CLOUD_MCADM.CONFIGURE_DATABASE_VAULT('DBVOWNER', 'DBVACCTMGR');
       
      PL/SQL procedure successfully completed.
      Dopo aver configurato Oracle Database Vault, abilitarlo. Dopo che Oracle Database Vault è stato abilitato, gli account con il ruolo Proprietario di Database Vault possono gestire la configurazione del vault e gli account con il ruolo Account Manager di Database Vault possono creare e gestire gli account nel database. In questo modo puoi sfruttare la separazione delle mansioni nel database.
    2. Riavviare il database.
      Nella pagina Istanza di database in OCI, fare clic su Altre azioni e selezionare Riavvia.
    3. Convalidare che Oracle Database Vault è configurato e abilitato utilizzando il codice di esempio riportato di seguito.
      Connected to:
      Oracle Database 23ai Enterprise Edition Release 23.0.0.0.0 - for Oracle Cloud and Engineered Systems
      Version 23.0.0.25.0
      
      SQL> SELECT * FROM DBA_DV_STATUS;
      
      NAME                     STATUS
      ------------------------ ----------------
      DV_APP_PROTECTION        NOT CONFIGURED
      DV_CONFIGURE_STATUS      TRUE
      DV_ENABLE_STATUS         TRUE
      
      SQL>
    4. Concedere i ruoli di Oracle Database Vault agli account di backup:
      
      SQL> grant DV_OWNER to DBOWNER_BACKUP;
      
      Grant succeeded.
      
      SQL> grant DV_ACCTMGR to DBVACCTMGR_BACKUP;
      
      Grant succeeded.
      
      SQL>  
  3. Creare un realm per separare i dati riservati dagli account con privilegi.
    1. Prima di creare il realm, eseguire il login come admin e verificare che l'account con privilegi disponga dell'accesso ai dati riservati, in questo caso i dati delle risorse umane (HR):
      SQL> show user;
      USER is "ADMIN"
      SQL> select EMPLOYEE_ID,FIRST_NAME,LAST_NAME,SALARY from HR.EMPLOYEES where ROWNUM < 8;
      
      EMPLOYEE_ID FIRST_NAME      LAST_NAME                 SALARY
      ----------- --------------- ------------------------- ----------
              100 Steven          King                         24000
              101 Neena           Yang                         17000
              102 Lex             Garcia                       17000
              103 Alexander       James                         9000
              104 Bruce           Miller                        6000
              105 David           Williams                      4800
              106 Valli           Jackson                       4800
      
      7 rows selected.
      
      SQL>
    2. Accedi a Oracle Autonomous Database Serverless come utente con il ruolo di proprietario di Database Vault. Eseguire questo blocco PL/SQL per creare un realm denominato Protect HR Data:
      SQL> begin
        2  DVSYS.DBMS_MACADM.CREATE_REALM(
        3     realm_name => 'Protect HR Data'
        4    , description => 'This Realm will protect HR data from unauthorized privileged user access'
        5    , enabled => 'Y'
        6    , realm_type => DBMS_MACADM.MANDATORY_REALM );
        7  end;
        8  /
      PL/SQL procedure successfully completed.
      
      SQL>
    3. Aggiungere gli oggetti di database che devono essere protetti dal realm. Eseguire questo blocco PL/SQL per aggiungere tutte le tabelle nello schema HR al realm Proteggi dati HR:
      SQL> begin
        DVSYS.DBMS_MACADM.ADD_OBJECT_TO_REALM(
          realm_name => 'Protect HR Data',
          object_owner => 'HR',
          object_name => '%',
          object_type => 'TABLE');
      end;
      / 
      2    3    4    5    6    7    8
      
      PL/SQL procedure successfully completed.
      
      SQL>
    4. Eseguire questo blocco PL/SQL per aggiungere l'account dello schema HR e un responsabile HR hr_debra come partecipanti autorizzati al realm. Ciò garantisce che solo l'account del servizio applicazione e il manager HR possano accedere ai dati nello schema HR. Nessun account DBA o qualsiasi altro account con privilegi elevati nel database sarà in grado di accedere ai dati protetti dal realm di Database Vault.
      SQL> begin
        DVSYS.DBMS_MACADM.ADD_OBJECT_TO_REALM(
          realm_name => 'Protect HR Data',
          object_owner => 'HR',
          object_name => '%',
          object_type => 'TABLE');
      end;
      /  2    3    4    5    6    7    8
      
      PL/SQL procedure successfully completed.
      
      SQL>
    5. La convalida ADMIN non può più accedere ai dati HR:
      SQL> 
      SQL> show user;
      USER is "ADMIN"
      SQL> select EMPLOYEE_ID,FIRST_NAME,LAST_NAME,SALARY from HR.EMPLOYEES where ROWNUM < 8;
      select EMPLOYEE_ID,FIRST_NAME,LAST_NAME,SALARY from HR.EMPLOYEES where ROWNUM < 8
                                                                                       *
      ERROR at line 1:
      ORA-01031: insufficient privileges
      
      
      SQL>

Opzione 3: registrare il database con Oracle Data Safe

Oracle Data Safe è un centro di controllo unificato per i database Oracle, che aiuta a comprendere la riservatezza delle dati, valutare i rischi Per i dati, mascherare le informazioni riservate, implementare e monitorare i controlli di protezione, valutare l'attività degli utenti, monitorare l'attività e rispondere ai requisiti DI conformità a livello della sicurezza dei dati.

In questa opzione è possibile registrare l'istanza di destinazione con Oracle Data Safe. Dopo aver completato la registrazione, esaminare la valutazione della sicurezza e i risultati della valutazione utente e configurare le baseline per ciascuno di essi.

Per registrare il database con Oracle Data Safe, effettuare le operazioni riportate di seguito.

  1. Registrare il database di destinazione con Oracle Data Safe:
    1. Nella console OCI fare clic su Oracle Database, quindi su Panoramica in Data Safe. Fare clic su Database di destinazione nel riquadro di navigazione a sinistra e fare clic su Registra database.
    2. Selezionare Oracle Autonomous Database Serverless, immettere le informazioni richieste e fare clic su Registrati.
    3. Dopo la registrazione della destinazione riuscita, Oracle Data Safe avvia sia una scansione di valutazione della sicurezza che una scansione di valutazione utente.
  2. Esaminare la valutazione della sicurezza:
    1. Nella pagina Panoramica di Data Safe, fare clic su Valutazione sicurezza nel riquadro di navigazione a sinistra. Selezionare la scheda di riepilogo target, quindi fare clic sul riepilogo target per il database.
    2. Scorrere verso il basso ed esaminare ciascuno dei risultati. Se necessario, intraprendere un'azione correttiva e avviare un'altra scansione. Se si è soddisfatti dei risultati della scansione corrente e si accettano i risultati, fare clic su Imposta come baseline. Tutte le scansioni future vengono confrontate con la baseline e si riceverà una notifica se la configurazione del database si discosta dalla baseline impostata.
  3. Esaminare la valutazione utente:
    1. Nella pagina Panoramica di Data Safe, fare clic su Valutazione sicurezza nel riquadro di navigazione a sinistra. Selezionare la scheda di riepilogo target, quindi fare clic sul riepilogo target per il database.
    2. Scorrere verso il basso ed esaminare ciascuno dei risultati. Se necessario, intraprendere un'azione correttiva e avviare un'altra scansione. Se si è soddisfatti dei risultati della scansione corrente e si accettano i risultati, fare clic su Imposta come baseline. Tutte le scansioni future verranno confrontate con la baseline e si riceverà una notifica se la configurazione del database si discosta dalla baseline impostata.

Opzione 4: Centralizzare l'autenticazione e l'autorizzazione degli utenti mediante l'integrazione con Entra ID

La gestione di utenti e credenziali per gli utenti di Oracle Database può diventare rapidamente un onere amministrativo impegnativo man mano che il numero di istanze di database si moltiplica.

Oracle ha creato soluzioni innovative per mitigare questo problema per decenni. Oracle Autonomous Database rispetta i token OAuth2 emessi da Entra ID (in precedenza Active Directory), la piattaforma di identità cloud di Microsoft. Questa funzionalità consente di gestire utenti e ruoli in una soluzione di identità cloud centrale, mentre Oracle Autonomous Database utilizza tali credenziali per i controlli di accesso basati su criteri.

Il flusso di autenticazione è mostrato nel diagramma seguente e descritto nei passaggi seguenti:



azure-autenticazione-oracle.zip

  1. L'utente Azure richiede l'accesso all'istanza di Oracle Autonomous Database Serverless.
  2. Il client o l'applicazione di database richiede un codice di autorizzazione da Entra ID.
  3. Entra ID autentica l'utente e restituisce il codice di autorizzazione.
  4. Lo strumento o l'applicazione helper utilizza il codice di autorizzazione con Entra ID per scambiarlo con il token OAuth2.
  5. Il client di database invia il token di accesso OAuth2 al database Oracle. Il token include i ruoli applicazione del database a cui è stato assegnato l'utente nella registrazione dell'applicazione Entra ID per il database.
  6. L'istanza di Oracle Autonomous Database Serverless utilizza la chiave pubblica Entra ID per verificare che il token di accesso sia stato creato da Entra ID.

Per implementare il piano presentato qui, è necessario prima soddisfare i seguenti prerequisiti:

  • Impostare Oracle Autonomous Database Serverless come applicazione aziendale Microsoft Azure Entra ID (per fare riferimento alle esercitazioni, vedere la sezione Scopri di più).
  • Impostare il client SQL Developer per l'autenticazione perfetta di Azure Entra ID.

Per integrare l'autenticazione con Microsoft Entra ID, effettuare le operazioni riportate di seguito.

  1. Configurare Oracle Autonomous Database Serverless per utilizzare l'applicazione enterprise in Azure Entra ID per l'autenticazione.

    La procedura riportata di seguito indica a Oracle Autonomous Database Serverless di utilizzare la tenancy Entra ID come provider di identità e associa in modo specifico i token OAuth2 emessi dall'applicazione enterprise per l'autorizzazione al database.

    1. Connettersi all'istanza di Oracle Database Actions (SQL Developer Web).
    2. Nel pannello sinistro, selezionare la connessione appropriata.
    3. Fare clic su Viste nel menu sopra la barra di ricerca.
    4. Nella barra di ricerca, immettere il nome della vista, ad esempio MULTICLOUD_DEMO_AZURE_CONFIGS, per trovare rapidamente la vista e quindi fare clic sul nome della vista.
    5. Immettere il codice SQL seguente con l'ID tenant e l'URI applicazione associati:
      BEGIN
          DBMS_CLOUD_ADMIN.ENABLE_EXTERNAL_AUTHENTICATION(
              type   => 'AZURE_AD',
              params => JSON_OBJECT('tenant_id' VALUE '<tenant_id>',
                                    'application_id' VALUE 'f2c359b4-c3f9-4415-a333-332340376e59',
                                    'application_id_uri' VALUE '<application_id_uri>'),
              force => TRUE
          );
      END;
  2. Creare un'associazione utente:
    1. Creare uno schema utente in Oracle Autonomous Database Serverless e associare tale utente all'ID principal utente in Entra ID. La definizione di un utente globale indica che l'oggetto token Entra ID viene utilizzato per affermare l'identità dell'utente del database.
      Per questo caso d'uso, viene utilizzato un mapping uno-a-uno dell'ID Entra soggetto al database. Per le distribuzioni di dimensioni maggiori, un amministratore può scegliere di configurare i mapping utente dello schema condiviso in base alle appartenenze a ruoli e gruppi in Entra ID.
    2. Concedere le funzionalità di connessione all'utente del database nell'istanza di Oracle Database Actions (SQL Developer Web):
      CREATE USER <azure_user_name> IDENTIFIED GLOBALLY AS 'AZURE_USER=<azure_user_name>';
      
      grant connect to <azure_user_name>;
  3. Accedi al database utilizzando Oracle SQL Developer e Entra ID.
    Aprire Oracle SQL Developer e configurare una connessione all'istanza di Oracle Autonomous Database Serverless utilizzando le librerie JDBC più recenti che consentono il login interattivo con l'ID Azure Entra.
    1. Nel pannello Connessioni di Oracle SQL Developer, fare clic su Nuova connessione.
    2. Specificare un nome di connessione.
    3. Selezionare OS come tipo di autenticazione.
    4. Selezionare JDBC personalizzato come tipo di connessione.
    5. Immettere l'URL JDBC:
      jdbc:oracle:thin:@config=<jdbc_url>
    6. Verificare la connessione facendo clic su Test, che aprirà un browser per il login interattivo a Entra ID.
    7. Eseguire l'autenticazione utilizzando l'utente mappato come utente globale del database.
      Una volta eseguito il login, viene stabilita una connessione SQL aperta.
    8. Eseguire show user per restituire l'utente dello schema.
      show user;
      select sys_context('USERENV', 'AUTHENTICATED_IDENTITY') from dual;
    9. Controllare il contesto della sessione per indicare che il principal autenticato conserva il principal Entra ID.
      Viene utilizzato dall'audit trail unificato per associare l'utente Entra ID alle transazioni eseguite dal principal autenticato.
    10. Fare clic su Salva nella finestra di connessione al database.

Opzione 5: Unifica pipeline di audit e database per esportare dati in Azure Blob Storage

Avere forti controlli di sicurezza preventiva è solo la metà della battaglia; le aziende devono anche controllare e monitorare i loro sistemi, anche quando non sono sotto attacco.

La creazione di un audit trail della transazione del database è un modo efficace per garantire la tracciabilità. Oracle Autonomous Database include pipeline pronte per la configurazione e la distribuzione e in grado di eseguire il push di questi log di audit nello storage multicloud desiderato. Questa sezione mostra come utilizzare facilmente il principal del servizio Entra ID esistente (creato nella sezione precedente) per eseguire il push dell'audit trail in Azure Blob Storage in un intervallo di tempo continuo.



adbs-pipeline-export-arch-oracle.zip

Per implementare il piano presentato qui, è necessario prima soddisfare i seguenti prerequisiti:

  • Abilita un audit trail unificato con Oracle Data Safe.
  • Creare un principal del servizio per Oracle Autonomous Database Serverless.
  • Creare un account di storage Azure.
  • Creare un contenitore privato nell'account di storage di Azure per i log di audit di Oracle Autonomous Database Serverless.

Per utilizzare e memorizzare i log di controllo, effettuare le operazioni riportate di seguito.

  1. Assegnare il ruolo di Storage Blob Data Contributor al principal del servizio Oracle Autonomous Database Serverless:
    1. Nel portale di Azure, selezionare l'account di storage creato in precedenza.
    2. Fare clic su Controllo accesso (IAM).
    3. Fare clic su Aggiungi, quindi su Aggiungi assegnazione ruolo.
    4. Utilizzare la barra di Ricerca per cercare Contributore dati BLOB di memorizzazione.
    5. Fare clic sul ruolo Contributore dati Blob di memorizzazione.
    6. Fare clic su Avanti.
  2. Aggiungere il principal del servizio Oracle Autonomous Database Serverless all'assegnazione del ruolo.
    1. Nella sezione Membri, cercare il principal del servizio di Oracle Autonomous Database Serverless.
    2. Assegna l'appartenenza.
    3. Fare clic su Rivedi + Assegna.
  3. Configurare gli attributi della pipeline dalla posizione del contenitore di storage di Azure.

    Aprire un foglio di lavoro SQL ed eseguire le seguenti procedure SQL in cui <storage_location_url> è l'URL della posizione di memorizzazione di Azure:

    BEGIN
    DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'ORA$AUDIT_EXPORT',
      attribute_name => 'credential_name',
      attribute_value => 'AZURE$PA' );
    
    DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'ORA$AUDIT_EXPORT',
      attribute_name => 'location',
      attribute_value => '<storage_location_url>' );
    
    DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE( pipeline_name => 'ORA$AUDIT_EXPORT',
      attribute_name => 'interval',
      attribute_value => '15' );
    
    END;
    /
  4. Per eseguire il test della pipeline di esportazione e impostarla sull'esecuzione, eseguire le istruzioni riportate di seguito.
    /* THIS RUNS THE PIPELINE ONCE*/
    /
    BEGIN DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE( pipeline_name => 'ORA$AUDIT_EXPORT' );
    END;
    /
    
    /* IF SUCCESSFUL - THIS WILL RESET THE PIPELINE*/
    /
    BEGIN DBMS_CLOUD_PIPELINE.RESET_PIPELINE( pipeline_name => 'ORA$AUDIT_EXPORT', purge_data => TRUE);
    END;
    /
    
    /* THIS WILL MAKE IT ACTIVE AND RUNNING ON THE SET INTERVAL */
    /
    BEGIN DBMS_CLOUD_PIPELINE.START_PIPELINE( pipeline_name => 'ORA$AUDIT_EXPORT' );
    END;
    /
    Se la pipeline è configurata correttamente, verrà visualizzato un file nel contenitore di storage Blob di Azure configurato negli attributi della pipeline. Nel tempo, creerà file incrementali nel contenitore di storage che contengono solo i record di audit trail unificati più recenti.

Opzione 6: utilizzare Oracle SQL Firewall per Oracle Autonomous Database Serverless 23ai

Oltre alle liste di sicurezza di rete virtuale e ai gruppi di sicurezza di rete, Oracle Autonomous Database Serverless 23ai viene fornito con Oracle SQL Firewall.

Oracle SQL Firewall è una funzione di difesa approfondita che viene eseguita all'interno del runtime del database e che applica il controllo dell'accesso ai dati basato su criteri e contesto.

Per Oracle Database@Azure, i criteri SQL Firewall possono fornire una protezione last-mile dall'accesso non autorizzato, indipendentemente dal punto di ingresso.



adbs-sqlfirewall-flow-oracle.zip



adbs-sqlfirewall-arch-oracle.zip

Per implementare il piano presentato qui, è necessario prima soddisfare i seguenti prerequisiti:

  • Registra Oracle Data Safe con l'istanza Oracle Autonomous Database Serverless 23ai.
  • Abilitare SQL Firewall in Oracle Data Safe (un collegamento alle istruzioni viene fornito nella sezione Esplora altro).

Per utilizzare Oracle SQL Firewall per Oracle Autonomous Database Serverless 23ai, effettuare le operazioni riportate di seguito.

  1. Iniziare a raccogliere il traffico SQL per l'utente creato per l'autenticazione Entra ID:
    1. Dal dashboard SQL Firewall fare clic su SQL Collections.
    2. Specificare l'utente che si desidera creare il criterio SQL Firewall.
    3. Fare clic su Crea e avvia raccolta SQL.
  2. Dopo aver generato del traffico SQL con l'utente selezionato, configurare il criterio in base alle istruzioni SQL acquisite:
    1. Nella pagina Dettagli raccolta SQL, fare clic su Arresta.
    2. Fare clic su Genera criterio firewall.
    3. Rivedere e, facoltativamente, aggiornare i valori di contesto della sessione SQL consentiti in base alle esigenze.
      Ad esempio, per un'istruzione consentita, selezionare una riga, fare clic su Aggiorna, quindi fare clic sulla X alla fine della riga per rimuovere l'istruzione consentita. Per i test dei cuccioli, è possibile eseguire questa operazione per tutte le istruzioni consentite.
    4. Fare clic su Distribuisci e applica per abilitare il criterio.
  3. Eseguire il test del criterio SQL Firewall abilitato.
    Utilizzando SQL Developer (o qualsiasi client SQL), collegarsi al database e autenticarsi come utente Entra ID creato per l'applicazione dei criteri SQL Firewall (con tutte le istruzioni SQL consentite rimosse). Dopo l'autenticazione, il messaggio di errore indica che il database è stato passato correttamente attraverso le liste di sicurezza e i gruppi di sicurezza di rete, tuttavia la richiesta viene negata a livello di connessione SQL.
  4. Per visualizzare i report sulle violazioni, fare clic su Report sulle violazioni nel riquadro di navigazione a sinistra del dashboard di SQL Firewall.