Choisir et implémenter votre déploiement

Utilisez les méthodes présentées dans cette section pour sécuriser Oracle Autonomous Database Serverless@Azure :

  1. Utilisation du cryptage transparent des données et d'Azure Key Vault
  2. Configurer et activer Oracle Database Vault
  3. Inscription de la base de données auprès d'Oracle Data Safe
  4. Centraliser l'authentification et l'autorisation des utilisateurs en les intégrant à Entra ID
  5. Unifier le pipeline d'audit et de base de données pour exporter des données vers le stockage BLOB Azure
  6. Utiliser Oracle SQL Firewall pour Oracle Database 23ai

Option 1 : utilisation du cryptage transparent des données et d'Azure Key Vault

Le cryptage transparent des données (TDE) Oracle est configuré et activé par défaut dans toutes les bases de données Oracle Autonomous Database Serverless.

Les étapes suivantes vous montreront comment valider la configuration TDE par défaut. Il présente ensuite les étapes d'implémentation du cryptage géré par le client avec Azure Key Vault pour Oracle Autonomous Database Serverless.



adbs-key-vault-arch-oracle.zip

Pour implémenter le plan présenté ici, vous devez d'abord satisfaire aux prérequis suivants :

  • Déployez l'instance Oracle Autonomous Database Serverless à l'aide de la console Microsoft Azure
  • Créer le coffre de clés Azure (Standard ou Premium)
  • Créer une clé RSA 2048 bits dans Azure Key Vault
  • Créer un principal de service pour Autonomous Database

Pour utiliser le coffre de clés TDE et Azure, procédez comme suit :

  1. Affectez les stratégies d'accès au coffre de principal de service au principal de service azure pour l'instance Oracle Autonomous Database Serverless :
    1. Accédez à l'instance Azure Key Vault.
    2. Cliquez sur Paramètres, puis sur Configuration de l'accès.
    3. Cliquez sur Stratégie d'accès par coffre.
    4. Cliquez sur Accéder aux stratégies d'accès.
  2. Créez la stratégie d'accès au coffre :
    1. Sélectionnez les droits d'accès :
      • GET
      • List (Liste)
      • Crypter
      • Sign
      • Vérifier
    2. Cliquez sur Suivant.
  3. Sélectionnez le principal de service créé pour l'instance Oracle Autonomous Database Serverless
    1. Poursuivez pour cliquer sur Suivant jusqu'à passer en revue et créer.
    2. Cliquez sur Créer.
  4. Collectez les informations suivantes à utiliser dans Oracle Cloud Infrastructure (OCI) afin de configurer Oracle Autonomous Database Serverless pour la gestion des clés.
    • URI de coffre
    • Nom de la clé
  5. A partir de l'instance Azure Key Vault, copiez le nom de la clé.
  6. Dans OCI, accédez à votre instance Oracle Autonomous Database Serverless.
    1. Cliquez sur Actions supplémentaires.
    2. Cliquez sur Manage Encryption Key (Gérer la clé de cryptage).
    3. Cliquez sur Crypter à l'aide d'une clé gérée par l'utilisateur.
    4. Dans le menu Type de clé, sélectionnez Azure.
    5. Renseignez les champs suivants avec les informations d'Azure :
      • URI de coffre (n'incluez pas la barre oblique de fin)
      • Nom de clé
    6. Cliquez sur Save.
      La mise à jour d'Autonomous Database prend un moment. Elle affichera à nouveau Disponible. Vous pourrez également voir la nouvelle clé affectée dans les détails d'Autonomous Database.

      L'historique des clés doit également indiquer que la clé gérée par le client (Microsoft Azure) est désormais la clé de cryptage maître utilisée pour TDE.

  7. Connectez-vous à la base de données en tant qu'administrateur et validez TDE.

    Ouvrez le client de base de données et connectez-vous à la base de données nouvellement provisionnée. Une fois connecté, utilisez CloudShell ou similaire pour exécuter cette requête SQL afin de vérifier que votre base de données dispose d'une clé maître TDE et que vos tablespaces sont cryptés à l'aide de 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>

Option 2 : configurer et activer Oracle Database Vault

Configurez et activez Oracle Database Vault dans votre instance Oracle Autonomous Database Serverless pour protéger les données contre les accès non autorisés aux comptes avec privilèges.

Vous devez créer des comptes de base de données supplémentaires pour faciliter la séparation des tâches pour Oracle Database Vault. Une fois Oracle Database Vault activé, créez un domaine Oracle Database Vault pour séparer les données confidentielles des comptes à privilèges élevés au sein de la base de données.

Pour configurer et activer Oracle Database Vault, procédez comme suit :

  1. Créez les comptes nécessaires pour la configuration Oracle Database Vault.

    Oracle recommande de créer plusieurs comptes pour vous assurer que vos données ne sont jamais verrouillées. La perte du mot de passe pour ces comptes pourrait rendre vos données inaccessibles.

    Connectez-vous à la base de données Oracle Autonomous Database Serverless et créez quatre comptes de base de données : le rôle Propriétaire de Database Vault sera affecté à deux comptes et le rôle Gestionnaire de comptes Database Vault sera affecté à deux comptes.

    Utilisez l'exemple de code suivant pour créer les comptes où <user_name> est le nom utilisé pour identifier le compte associé.

    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. Configurez et activez Oracle Database Vault.
    1. Connectez-vous à la base de données en tant qu'utilisateur admin et exécutez le package suivant pour configurer Oracle Database Vault.
      SQL>
      SQL> EXEC DBMS_CLOUD_MCADM.CONFIGURE_DATABASE_VAULT('DBVOWNER', 'DBVACCTMGR');
       
      PL/SQL procedure successfully completed.
      Une fois que vous avez configuré Oracle Database Vault, activez-le. Une fois Oracle Database Vault activé, les comptes dotés du rôle Propriétaire Database Vault peuvent gérer la configuration de coffre et les comptes dotés du rôle Gestionnaire de comptes Database Vault peuvent créer et gérer des comptes dans la base de données. Vous pouvez désormais tirer parti de la séparation des tâches dans la base de données.
    2. Redémarrez la base de données.
      Sur la page de l'instance de base de données dans OCI, cliquez sur Actions supplémentaires et sélectionnez Redémarrer.
    3. Vérifiez qu'Oracle Database Vault est configuré et activé à l'aide de l'exemple de code suivant.
      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. Accordez des rôles Oracle Database Vault aux comptes de sauvegarde :
      
      SQL> grant DV_OWNER to DBOWNER_BACKUP;
      
      Grant succeeded.
      
      SQL> grant DV_ACCTMGR to DBVACCTMGR_BACKUP;
      
      Grant succeeded.
      
      SQL>  
  3. Créez un domaine pour séparer les données confidentielles des comptes avec privilèges.
    1. Avant de créer le domaine, connectez-vous en tant que admin et vérifiez que le compte privilégié a accès aux données confidentielles. Dans ce cas, les données RH :
      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. Connectez-vous à Oracle Autonomous Database Serverless en tant qu'utilisateur doté du rôle de propriétaire Database Vault. Exécutez ce bloc PL/SQL pour créer un domaine nommé 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. Ajoutez les objets de base de données qui doivent être protégés par le domaine. Exécutez ce bloc PL/SQL pour ajouter toutes les tables du schéma HR au domaine Protect HR Data :
      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. Exécutez ce bloc PL/SQL pour ajouter le compte de schéma HR et un responsable RH hr_debra en tant que participants autorisés du domaine. Ainsi, seul le compte de service applicatif et le responsable RH peuvent accéder aux données du schéma HR. Aucun compte DBA ou autre compte doté de privilèges élevés dans la base de données ne peut accéder aux données protégées par le domaine 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. Valider ADMIN ne peut plus accéder aux données RH :
      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>

Option 3 : inscription de la base de données auprès d'Oracle Data Safe

Oracle Data Safe est un Centre de contrôle unifié pour les bases de données d'Oracle. Il vous aide à comprendre la sensibilité de vos données, à évaluer des risques pour vos données, à masquer des données confidentielles, à implémenter et surveiller des contrôles de la sécurité, à évaluer l'activité des utilisateurs, à surveiller l'activité de ces derniers et de répondre aux exigences en matière d'application de la conformité des données.

Dans cette option, vous inscrivez l'instance cible auprès d'Oracle Data Safe. Après l'inscription, passez en revue les résultats de l'évaluation de la sécurité et de l'évaluation des utilisateurs et configurez des références pour chacune d'elles.

Pour inscrire la base de données auprès d'Oracle Data Safe, procédez comme suit :

  1. Inscrivez la base de données cible auprès d'Oracle Data Safe :
    1. Dans la console OCI, cliquez sur Oracle Database, puis sur Présentation sous Data Safe. Cliquez sur Bases de données cible dans le panneau de navigation de gauche et cliquez sur Inscrire une base de données.
    2. Sélectionnez Oracle Autonomous Database Serverless, entrez les informations requises et cliquez sur Inscrire.
    3. Une fois l'inscription de la cible réussie, Oracle Data Safe lance à la fois une analyse d'évaluation de la sécurité et une analyse d'évaluation des utilisateurs.
  2. Vérifiez l'évaluation de la sécurité :
    1. Sur la page Présentation de Data Safe, cliquez sur Evaluation de la sécurité dans le panneau de navigation de gauche. Sélectionnez l'onglet Récapitulatif cible, puis cliquez sur le récapitulatif cible de votre base de données.
    2. Faites défiler les résultats et examinez-les. Si nécessaire, effectuez une action corrective et lancez une autre analyse. Si vous êtes satisfait des résultats de l'analyse en cours et que vous acceptez les résultats, cliquez sur Définir comme référence. Toutes les analyses futures sont comparées à la ligne de base et vous recevrez une notification si la configuration de la base de données s'écarte de la ligne de base définie.
  3. Vérifiez l'évaluation des utilisateurs :
    1. Sur la page Présentation de Data Safe, cliquez sur Evaluation de la sécurité dans le volet de navigation de gauche. Sélectionnez l'onglet Récapitulatif cible, puis cliquez sur le récapitulatif cible de votre base de données.
    2. Faites défiler les résultats et examinez-les. Si nécessaire, effectuez une action corrective et lancez une autre analyse. Si vous êtes satisfait des résultats de l'analyse en cours et que vous acceptez les résultats, cliquez sur Définir comme référence. Toutes les analyses futures seront comparées à la ligne de base et vous recevrez une notification si la configuration de la base de données s'écarte de la ligne de base définie.

Option 4 : Centraliser l'authentification et l'autorisation des utilisateurs en s'intégrant à Entra ID

La gestion des utilisateurs et des informations d'identification pour les utilisateurs Oracle Database peut rapidement devenir un fardeau administratif difficile à mesure que le nombre d'instances de base de données se multiplie.

Oracle crée des solutions innovantes pour atténuer ce problème depuis des décennies. Oracle Autonomous Database honore les jetons OAuth2 émis par Entra ID (anciennement Active Directory), la plate-forme d'identité cloud de Microsoft. Cette fonctionnalité vous permet de gérer les utilisateurs et les rôles dans une solution d'identité cloud centrale, tandis qu'Oracle Autonomous Database utilise ces informations d'identification pour les contrôles d'accès basés sur des stratégies.

Le flux d'authentification est illustré dans le diagramme ci-dessous et décrit dans les étapes suivantes :



azure-authentification-oracle.zip

  1. L'utilisateur Azure demande l'accès à l'instance Oracle Autonomous Database Serverless.
  2. Le client ou l'application de base de données demande un code d'autorisation à partir de l'ID Entra.
  3. Entra ID authentifie l'utilisateur et renvoie le code d'autorisation.
  4. L'outil d'aide ou l'application utilise le code d'autorisation avec l'ID Entra pour l'échanger contre le jeton OAuth2.
  5. Le client de base de données envoie le jeton d'accès OAuth2 à la base de données Oracle. Le jeton inclut les rôles d'application de base de données auxquels l'utilisateur a été affecté dans l'inscription de l'application Entra ID pour la base de données.
  6. L'instance Oracle Autonomous Database Serverless utilise la clé publique Entra ID pour vérifier que le jeton d'accès a été créé par Entra ID.

Pour implémenter le plan présenté ici, vous devez d'abord satisfaire aux prérequis suivants :

  • Configurez Oracle Autonomous Database Serverless en tant qu'application d'entreprise Microsoft Azure Entra ID (les tutoriels sont référencés dans la section En savoir plus).
  • Configurez le client SQL Developer pour une authentification transparente Azure Entra ID.

Pour intégrer l'authentification à Microsoft Entra ID, procédez comme suit :

  1. Configurez Oracle Autonomous Database Serverless afin d'utiliser l'application d'entreprise dans Azure Entra ID pour l'authentification.

    La procédure suivante indique à Oracle Autonomous Database Serverless d'utiliser la location Entra ID en tant que fournisseur d'identités et lie spécifiquement les jetons OAuth2 émis par l'application Enterprise pour autorisation à la base de données.

    1. Connectez-vous à votre instance Oracle Database Actions (SQL Developer Web).
    2. Dans le panneau de gauche, sélectionnez la connexion appropriée.
    3. Cliquez sur Vues dans le menu au-dessus de la barre de recherche.
    4. Dans la barre de recherche, entrez le nom de la vue, par exemple MULTICLOUD_DEMO_AZURE_CONFIGS, pour la trouver rapidement, puis cliquez sur le nom de la vue.
    5. Entrez le code SQL suivant avec l'ID de locataire et l'URI d'application associés :
      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. Créez une association d'utilisateurs :
    1. Créez un schéma utilisateur dans Oracle Autonomous Database Serverless et associez-le à l'ID principal utilisateur dans Entra ID. La définition d'un utilisateur global indique que l'objet de jeton Entra ID est utilisé pour affirmer l'identité de l'utilisateur de base de données.
      Dans ce cas d'utilisation, un mapping un-à-un de l'ID Entra sujet à la base de données est utilisé. Pour les déploiements plus importants, un administrateur peut choisir de configurer des mappings utilisateur de schéma partagé en fonction des appartenances de rôle et de groupe dans Entra ID.
    2. Autorisez l'utilisateur de base de données à se connecter dans l'instance 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. Connectez-vous à la base de données à l'aide d'Oracle SQL Developer et de l'ID entrée.
    Ouvrez Oracle SQL Developer et configurez une connexion à l'instance Oracle Autonomous Database Serverless à l'aide des dernières bibliothèques JDBC qui permettent une connexion interactive avec Azure Entra ID.
    1. Dans le panneau Connexions Oracle SQL Developer, cliquez sur Nouvelle connexion.
    2. Indiquez un nom de connexion.
    3. Sélectionnez O/S comme type d'authentification.
    4. Sélectionnez JDBC personnalisé comme type de connexion.
    5. Entrez l'URL JDBC :
      jdbc:oracle:thin:@config=<jdbc_url>
    6. Vérifiez la connexion en cliquant sur Tester, ce qui ouvrira un navigateur pour une connexion interactive à Entra ID.
    7. Authentifiez-vous à l'aide de l'utilisateur que vous avez mappé en tant qu'utilisateur global de base de données.
      Une fois la connexion établie, une connexion SQL ouverte est établie.
    8. Exécutez show user pour renvoyer l'utilisateur de schéma.
      show user;
      select sys_context('USERENV', 'AUTHENTICATED_IDENTITY') from dual;
    9. Vérifiez le contexte de la session pour montrer que le principal authentifié conserve le principal Entra ID.
      Elle est utilisée par la trace d'audit unifié pour associer l'utilisateur Entra ID aux transactions effectuées par le principal authentifié.
    10. Cliquez sur Enregistrer dans la fenêtre de connexion à la base de données.

Option 5 : unifier le pipeline d'audit et de base de données pour exporter des données vers le stockage BLOB Azure

Avoir des contrôles de sécurité préventifs forts n'est que la moitié de la bataille ; les entreprises doivent également auditer et surveiller leurs systèmes, même lorsqu'elles ne sont pas attaquées.

La création d'une trace d'audit de la transaction de base de données est un moyen efficace de garantir la traçabilité. Oracle Autonomous Database inclut des pipelines prêts à être configurés et déployés, qui peuvent propager ces journaux d'audit vers le stockage multicloud de votre choix. Cette section montre comment utiliser facilement le principal de service Entra ID existant (créé dans la section précédente) pour propager votre trace d'audit vers le stockage BLOB Azure sur un intervalle de temps continu.



adbs-pipeline-export-arch-oracle.zip

Pour implémenter le plan présenté ici, vous devez d'abord satisfaire aux prérequis suivants :

  • Activez une trace d'audit unifié avec Oracle Data Safe.
  • Créez un principal de service pour Oracle Autonomous Database Serverless.
  • Créez un compte de stockage Azure.
  • Créez un conteneur privé dans le compte de stockage Azure pour les journaux d'audit Oracle Autonomous Database Serverless.

Pour utiliser et stocker des journaux d'audit, procédez comme suit :

  1. Affectez le rôle de contributeur de données BLOB de stockage au principal de service Oracle Autonomous Database Serverless :
    1. Dans le portail Azure, sélectionnez le compte de stockage que vous avez créé précédemment.
    2. Cliquez sur Contrôle d'accès (IAM).
    3. Cliquez sur Ajouter, puis sur Ajouter une affectation de rôle.
    4. Utilisez la barre de recherches pour rechercher Contributeur de données BLOB de stockage.
    5. Cliquez sur le rôle Contributeur de données BLOB de stockage.
    6. Cliquez sur Suivant.
  2. Ajoutez le principal de service Oracle Autonomous Database Serverless à l'affectation de rôle.
    1. Dans la section Membres, recherchez le principal de service Oracle Autonomous Database Serverless.
    2. Affectez l'adhésion.
    3. Cliquez sur Vérifier + Affecter.
  3. Configurez les attributs de pipeline à partir de l'emplacement Azure Storage Container.

    Ouvrez une feuille de calcul SQL et exécutez les procédures SQL suivantes, où <storage_location_url> est l'URL de l'emplacement de stockage 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. Pour tester le pipeline d'export et le définir comme exécuté, exécutez les instructions suivantes :
    /* 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;
    /
    Si le pipeline est configuré correctement, vous verrez un fichier dans le conteneur de stockage Azure Blob qui a été configuré dans les attributs de pipeline. Au fil du temps, il crée des fichiers incrémentiels dans le conteneur de stockage qui contiennent uniquement les derniers enregistrements de trace d'audit unifié.

Option 6 : utilisation d'Oracle SQL Firewall pour Oracle Autonomous Database Serverless 23ai

Outre les listes de sécurité de réseau virtuel et les groupes de sécurité réseau, Oracle Autonomous Database Serverless 23ai est livré avec Oracle SQL Firewall.

Oracle SQL Firewall est une fonctionnalité de défense en profondeur qui s'exécute dans l'exécution de la base de données et qui applique un contrôle d'accès basé sur une stratégie et un contexte à vos données.

Pour Oracle Database@Azure, les stratégies de pare-feu SQL peuvent fournir une protection de dernier kilomètre contre les accès non autorisés, quel que soit le point d'entrée.



adbs-sqlfirewall-flow-oracle.zip



adbs-sqlfirewall-arch-oracle.zip

Pour implémenter le plan présenté ici, vous devez d'abord satisfaire aux prérequis suivants :

  • Inscrivez Oracle Data Safe auprès de l'instance Oracle Autonomous Database Serverless 23ai.
  • Activez le pare-feu SQL dans Oracle Data Safe (un lien vers les instructions est fourni dans la section Explorer plus).

Pour utiliser Oracle SQL Firewall pour Oracle Autonomous Database Serverless 23ai, procédez comme suit :

  1. Commencez à collecter le trafic SQL pour l'utilisateur que vous avez créé pour l'authentification Entra ID :
    1. Dans le tableau de bord du pare-feu SQL, cliquez sur Collectes SQL.
    2. Indiquez l'utilisateur que vous souhaitez créer la stratégie de pare-feu SQL.
    3. Cliquez sur Créer et démarrer une collection SQL.
  2. Après avoir généré du trafic SQL avec l'utilisateur sélectionné, configurez la stratégie en fonction des instructions SQL capturées :
    1. Sur la page de détails de la collecte SQL, cliquez sur Arrêter.
    2. Cliquez sur Générer une stratégie de pare-feu.
    3. Vérifiez et éventuellement mettez à jour les valeurs de contexte de session SQL autorisées selon vos besoins.
      Par exemple, pour une instruction autorisée, sélectionnez une ligne, cliquez sur Mettre à jour, puis cliquez sur le X à la fin de la ligne pour enlever l'instruction autorisée. Pour tester les puposes, vous pouvez le faire pour toutes les instructions autorisées.
    4. Cliquez sur Déployer et appliquer pour activer la stratégie.
  3. Testez la stratégie de pare-feu SQL activée.
    A l'aide de SQL Developer (ou de n'importe quel client SQL), connectez-vous à la base de données et authentifiez-vous en tant qu'utilisateur Entra ID créé pour l'application de stratégies SQL Firewall (avec toutes les instructions SQL autorisées enlevées). Après authentification, le message d'erreur indique que la base de données a réussi à passer par les listes de sécurité et les groupes de sécurité réseau, mais la demande est refusée au niveau de la connexion SQL.
  4. Pour afficher les rapports de violation, cliquez sur Rapports de violation dans le panneau de navigation de gauche du tableau de bord du pare-feu SQL.