Intégrer Oracle Data Safe et OCI Logging Analytics à OCI IAM et Microsoft Entra ID
Présentation
La sécurisation des bases de données Oracle dans des environnements hybrides et multinuages nécessite une visibilité complète de l'activité des utilisateurs, en particulier lorsque l'authentification est gérée à l'externe par Microsoft Azure Entra ID et Oracle Cloud Infrastructure Identity and Access Management (OCI IAM). Ce tutoriel décrit une intégration critique qui unifie les journaux d'audit d'Oracle Data Safe avec des métadonnées OCI IAM riches provenant de ces fournisseurs d'identité centralisés. Le résultat est une empreinte utilisateur complète, offrant une traçabilité de bout en bout inégalée pour toutes les interactions de base de données, quelle que soit la source d'authentification, améliorant ainsi la sécurité et simplifiant la gestion des accès.
Pourquoi en avons-nous besoin?
Les journaux d'audit de base de données traditionnels manquent souvent du contexte d'identité crucial nécessaire pour retracer les actions à des utilisateurs spécifiques du nuage, en particulier lorsque l'authentification se produit par l'intermédiaire de fournisseurs d'identités externes. Cette intégration résout directement cette lacune. En mettant en corrélation Oracle Data Safe et OCI Logging Analytics avec les métadonnées OCI IAM de Microsoft Azure Entra ID et OCI IAM, les organisations bénéficient d'une transparence de vérification améliorée, d'une meilleure traçabilité des utilisateurs sur les systèmes hybrides et d'une surveillance centralisée des activités d'accès. Cette journalisation unifiée et sensible à l'identité est essentielle pour renforcer la sécurité, simplifier les enquêtes de vérification et répondre aux exigences rigoureuses en matière de conformité dans les environnements d'entreprise modernes.
Publics
- Professionnels OCI IAM, administrateurs de base de données, analystes et vérificateurs de sécurité.
Objectifs
- Intégrez les journaux d'audit d'Oracle Data Safe aux métadonnées OCI IAM et Microsoft Entra ID, puis visualisez ces données enrichies dans OCI Logging Analytics. Ce processus améliore en fin de compte la transparence des vérifications et permet une traçabilité détaillée de bout en bout des utilisateurs dans les environnements en nuage et de base de données.
Conditions requises
-
Location OCI : Accès et autorisations pour OCI Logging Analytics, Oracle Data Safe, OCI Compute et les services OCI IAM.
-
Microsoft Entra ID Tenant : Accès administrateur.
-
Accès au service IAM pour OCI : Autorisations de configuration nécessaires.
-
Outils requis : Interface de ligne de commande OCI, interface de ligne de commande Azure,
jq,csvkit,pandaset LibreOffice (ou similaire). -
Configuration de Logging Analytics : Assurez-vous qu'OCI Logging Analytics est activé et que l'agent de gestion est installé et configuré. Pour plus d'informations, voir :
-
Instance de calcul OCI : Plugiciel d'agent de gestion activé.
Tâche 1 : Créer un rapport de vérification Oracle Data Safe personnalisé pour les utilisateurs authentifiés à l'externe dans toutes les bases de données
-
Connectez-vous à la console OCI, naviguez jusqu'à Bases de données Oracle, Sécurité des données - Vérification de l'activité et cliquez sur Rapports de vérification - Toutes les activités sous Ressources connexes.

-
Cliquez sur Gérer les colonnes et sélectionnez les colonnes requises.

-
Dans Créer un rapport personnalisé, entrez le nom d'affichage, la description et les détails du compartiment.

-
Dans Gérer le programme de rapport, dans la liste déroulante Fréquence du programme, sélectionnez Tous les jours et cliquez sur Enregistrer le programme.

Tâche 2 : Configurer l'instance de calcul OCI pour la collecte et la corrélation des données
Dans cette tâche, nous configurerons votre instance de calcul OCI pour extraire les détails de l'identité de l'utilisateur de Microsoft Entra ID et d'OCI IAM, et pour traiter les rapports d'audit d'Oracle Data Safe. L'objectif ultime est de corréler les ID utilisateurs externes dans les journaux de vérification avec des métadonnées d'identité enrichies, afin de fournir une empreinte utilisateur complète.
Note : Téléchargez les scripts suivants à partir d'ici :
scripts.
-
Extraire les utilisateurs Microsoft Entra ID.
Exécutez les commandes suivantes pour extraire les informations utilisateur de Microsoft Entra ID à l'aide de l'API Microsoft Graph (
fetch_azure_ad_users.sh)../fetch_azure_ad_users.shSortie :
[oracle@linux-bastion:~]$ ./fetch_azure_ad_users.sh Fetching Access Token... Calling Graph API for users list... Parsing users and converting to CSV... Users list saved to: azure_ad_users.csvhead -3 azure_ad_users.csvSortie :
[oracle@linux-bastion:~]$ head -3 azure_ad_users.csv "id","displayName","userPrincipalName","mail" "b41b0688-c07xxxxxxx3-e9b0db0c1107","Alex Kovuru","akovuruxxxxxxjtripaigmail.onmicrosoft.com","alex.xxxuru@gmail.com" "7eb35b90-dc0xxxxxxxxxx-bc0b-48789368e9cf","Anuj Tripathi","anujtxxxxxai_gmail.com#EXT#@anujtripaigmaixxmicrosoft.com","anujtrxxx@gmail.com" -
Extraire les utilisateurs OCI IAM.
Exécutez les commandes suivantes pour obtenir des détails sur l'utilisateur à partir de l'OCI IAM à l'aide de l'interface de ligne de commande OCI (
oci_user_list_to_csv.sh)../oci_user_list_to_csv.sh head -3 oci_iam_users.csvSortie :
[oracle@linux-bastion:~]$ ./oci_user_list_to_csv.sh CSV file generated: oci_iam_users.csv [oracle@linux-bastion:~]$ head -3 oci_iam_users.csv id,name,email "ocid1.user.oc1..aaaaaaaaqv3tai2mxxxxxxxxxxepkk5hrfinedvj67ieb7phkirwxfeupv3cbq","alexk",alex.kovuxxx@oracle.com "ocid1.user.oc1..aaaaaaaaoq7ypwb5xxxxxxxxx2l5i6yjlnsedvkcni3dxdjdkkw5lyf73lma","ag-admin","anujtripaxxxx2@gmail.com" [oracle@linux-bastion:~]$ -
Fusionner les données d'utilisateur.
Consolidez les données d'utilisateur extraites des deux sources dans un seul fichier CSV normalisé (
merge_users_csv.sh)../merge_users_csv.sh head -3 merged_users.csvSortie :
[oracle@linux-bastion:~]$ ./merge_users_csv.sh Merged CSV created: merged_users.csv [oracle@linux-bastion:~]$ head -3 merged_users.csv id,displayName,userPrincipalName,mail,source "7eb35b90-dc0d-4135-bc0b-48789368e9cf","Anuj Tripathi","anujtrip.ai_xxx.com#EXT#@anujtripaigmail.onmicrosoft.com","anujtrixxxx@gmail.com",AzureAD "ocid1.user.oc1..aaaaaaaaqv3tai2miu6vtgxxxxxxxxxxxfinedvj67ieb7phkirwxfeupv3cbq","alexk",null,"alex.kovxxxxu@oracle.com",OCI [oracle@linux-bastion:~]$ -
Traiter le rapport de vérification du service de sécurité des données.
Téléchargez, convertissez, nettoyez et standardisez le dernier rapport de vérification d'Oracle Data Safe (
process_data_safe_report.sh)../process_data_safe_report.sh head -3 cleaned_audit_records_final.csvSortie :
[oracle@linux-bastion:~]$ ./process_data_safe_report.sh Downloading report from OCI Data Safe... Converting XLS to CSV... convert /home/oracle/DS_AZ_OCI_Custom_External_User_Report_202507240745.xls -> /home/oracle/DS_AZ_OCI_Custom_External_User_Report_202507240745.csv using filter : Text - txt - csv (StarCalc) Cleaning the CSV file... Extracting specific columns... Post-processing the final CSV... Final post-processing complete. [oracle@linux-bastion:~]$ head -3 cleaned_audit_records_final.csv Target,DB user,OS user,Client host,Client ip,Event,Operation status,Operation time,External user DBS23AZPDB,ALLUSERS,oracle,linux-bastion,129.146.107.120,LOGOFF BY CLEANUP,SUCCESS,2025-07-10T21:07:37Z,b41b0688-c07e-416d-bf13-xxxxxxxxxc1107 DBS23AZPDB,ALLUSERS,oracle,linux-bastion,129.146.107.120,CREATE TABLE,SUCCESS,2025-07-10T19:59:07Z,b41b0688-c07e-416d-bf13-xxxxxxxx0c1107 [oracle@linux-bastion:~]$ -
Corréler les données
Enrichissez les journaux d'audit d'Oracle Data Safe en corrélant les ID utilisateurs externes avec les données d'utilisateur OCI IAM fusionnées (
DataSafe_External_Users_Audit_Dashboard.sh)../DataSafe_External_Users_Audit_Dashboard.sh head -3 DataSafe_External_Users_Audit_Dashboard.csvSortie :
[oracle@linux-bastion:~]$ ./DataSafe_External_Users_Audit_Dashboard.sh Correlated Data : DataSafe_External_Users_Audit_Dashboard.csv [oracle@linux-bastion:~]$ head -3 DataSafe_External_Users_Audit_Dashboard.csv Target,DB user,OS user,Client host,Client ip,Event,Operation status,Operation time,External user,displayName,mail,source DBS23OCI,ANUJ,oracle,linux-bastion,10.0.0.124,LOGON,FAILURE,2025-07-02T17:38:58Z,ocid1.user.oc1..aaaaaaaaam4ulylhebm4zwtiaqsy4xxxxxxxwu6imevy3lihnkejs7h43nlknkywq,anuj.t.tripaxxxx@oracle.com,anuj.t.tripaxxxx@oracle.com,OCI DBS23AZPDB,ALLUSERS,oracle,linux-bastion,129.146.107.120,COMMIT,SUCCESS,2025-07-10T19:34:38Z,b41b0688-c07e-416d-bf13-e9b0dbxxx107,Alex Kovuru,alex.kovuruxx@gmail.com,AzureAD [oracle@linux-bastion:~]$Vous utiliserez un ensemble de scripts shell fournis pour automatiser ces processus. Assurez-vous que ces scripts sont téléchargés dans votre instance de calcul OCI. Pour assurer les mises à jour quotidiennes du tableau de bord, programmez l'exécution de ces scripts au moyen d'une tâche cron sur votre instance de calcul OCI. L'exécution de cette tâche doit être programmée après l'heure de génération du rapport personnalisé d'Oracle Data Safe.
Tâche 3 : Configurer OCI Logging Analytics
-
Préparer votre hôte pour transmettre des journaux à OCI Logging Analytics.
Exécutez la commande suivante pour vous assurer que les journaux peuvent être lus par oracle-cloud-agent.
sudo -u oracle-cloud-agent /bin/bash -c "head -3 /home/oracle/DataSafe_External_Users_Audit_Dashboard.csv"Sortie attendue :
Target,DB user,OS user,Client host,Client ip,Event,Operation status,Operation time,External user,displayName,mail,source DBS23OCI,GLOBAL_USER,labuser,clienthost,49.37.181.25,LOGOFF BY CLEANUP,SUCCESS,2025-07-17T15:26:10Z,ocid1.user.oc1..aaaa...,alexk,alexxxx@example.com,OCI DBS23OCI,GLOBAL_USER,labuser,clienthost,49.37.181.25,COMMIT,SUCCESS,2025-07-17T15:15:02Z,ocid1.user.oc1..aaaa...,alexk,alexxxxxx@example.com,OCI -
Créez un analyseur délimité pour le fichier CSV de vérification.
Nous allons créer un analyseur qui convertit chaque ligne CSV en champs de journal structurés. OCI Logging Analytics peut filtrer, enrichir et visualiser.
-
Allez à la console OCI, naviguez jusqu'à Observabilité et gestion, Logging Analytics, Administration, Analyseurs, Créer un analyseur et entrez les informations requises comme indiqué dans l'image suivante.

-
Cliquez sur Champs et mappez la colonne d'en-tête au nom des champs d'OCI Logging Analytics.
Pour chaque colonne CSV, sélectionnez un champ existant ou créez un champ défini par l'utilisateur (CDU) s'il n'existe aucun champ approprié. Utilisez l'icône + pour créer le cas échéant.

-
Cliquez sur Test de l'analyseur et procédez de la façon suivante :
-
Passez à Test de l'analyseur.
-
Assurez-vous que l'analyse des exemples de lignes a réussi. La grille de prévisualisation doit afficher chaque colonne mappée au champ sélectionné.
-
Vérifiez que la colonne Horodatage a été résolue correctement (aucune erreur d'analyse; date/fuseau horaire correct).
-
Cliquez sur Créer un analyseur pour enregistrer.

-
-
-
Créez une source de fichiers qui utilise l'analyseur.
Une source indique à OCI Logging Analytics où trouver les journaux (modèles de chemin, méthode de collecte) et comment les interpréter (analyseur et métadonnées).
Allez à la console OCI, naviguez jusqu'à Observabilité et gestion, Logging Analytics, Administration, Sources, Créer une source et entrez les informations requises, comme indiqué dans l'image suivante, puis cliquez sur Créer une source.

-
Associer la source aux entités et au groupe de journaux.
Les associations activent le processus de collecte : la source est liée à des entités spécifiques (telles que des hôtes) et les journaux collectés sont acheminés vers un groupe de journaux désigné.
-
Allez à la console OCI, naviguez jusqu'à Logging Analytics, Administration et cliquez sur Sources.

-
Dans la page de détails Source, sélectionnez Compartiment qui contient les entités à associer.
-
Cliquez sur Entités non associées pour lister les entités de type correctes disponibles/admissibles à l'association.

-
Sélectionnez celle qui figure dans Entités non associées et cliquez sur Ajouter une association.
-
Sélectionnez un groupe de journaux existant, s'il est disponible. Dans ce tutoriel, nous allons créer le nouveau groupe de journaux en cliquant sur Créer un groupe de journaux.


-
Cliquez sur Soumettre.

-
-
Une fois l'ingestion lancée, vérifiez que les enregistrements peuvent faire l'objet d'une recherche et que les champs sont alimentés comme prévu.

Voir l'explorateur de journaux :

Tâche 4 : Explorer les journaux et créer un tableau de bord avec trois widgets
Tirez parti d'OCI Logging Analytics pour visualiser les journaux de vérification d'Oracle Data Safe enrichis avec des métadonnées d'identité externes. Créez un tableau de bord avec le graphique à secteurs d'empreinte de l'utilisateur Microsoft Azure, le graphique à secteurs d'empreinte de l'utilisateur OCI et une vue détaillée de la table de vérification.
-
Créer un widget de graphique à secteurs d'empreinte d'utilisateur Azure.
Exécutez l'interrogation suivante de l'explorateur de journaux :
'Log Source' = Demo_AZ_OCI_DS_Source | where Source = AzureAD | stats count as Azure_Events by 'External User' | sort -Azure_Events
Cliquez sur Actions et Enregistrez la recherche, comme illustré dans l'image suivante, puis ajoutez-la au tableau de bord (si le tableau de bord n'existe pas, créez un nouveau tableau de bord).

-
Gadget logiciel Créer un graphique à secteurs d'empreinte d'utilisateur OCI.
Exécutez l'interrogation suivante de l'explorateur de journaux :
'Log Source' = Demo_AZ_OCI_DS_Source | where Source = OCI | stats count as OCI_Events by 'External User' | sort -OCI_Events
Cliquez sur Actions, Enregistrez la recherche, comme illustré dans l'image suivante, et ajoutez-la au tableau de bord existant.

-
Créer une vue de table de vérification détaillée.
Exécutez l'interrogation suivante de l'explorateur de journaux :
'Log Source' = Demo_AZ_OCI_DS_Source | fields 'Target Name', db_user, OS_user, Client, 'Host IP Address (Client)', Event, Operation_status, externalId, 'External User', mail, Source, -Entity, -'Entity Type', -'Host Name (Server)', -'Problem Priority', -Label, -'Log Source'
Cliquez sur Actions, Enregistrez la recherche, comme illustré dans l'image suivante, et ajoutez-la au tableau de bord existant.

-
Voir le tableau de bord enregistré.
Allez à la console OCI, naviguez jusqu'à Logging Analytics, Administration, Tableaux de bord et cliquez sur le tableau de bord créé (
Demo_AZ_OCI_DS_DashBoard).
Liens connexes
Remerciements
-
Auteurs - Alex Kovuru (architecte en nuage principal), Anuj Tripathi (architecte de solution principal)
-
Contributeur - Indiradarshni Balasundaram (ingénieur en nuage principal)
Ressources d'apprentissage supplémentaires
Explorez d'autres laboratoires sur le site docs.oracle.com/learn ou accédez à plus de contenu d'apprentissage gratuit sur le canal Oracle Learning YouTube. De plus, visitez education.oracle.com/learning-explorer pour devenir un explorateur Oracle Learning.
Pour obtenir la documentation sur le produit, visitez Oracle Help Center.
Integrate Oracle Data Safe and OCI Logging Analytics with OCI IAM and Microsoft Entra ID
G39708-02
Copyright ©2025, Oracle and/or its affiliates.