Comment configurer la traçabilité des audits de DB pour MS Azure MySQL
En plus d’autres fonctionnalités, DataSunrise propose un outil d’audit dédié, le suivi des audits de DB, basé sur l’utilisation des outils et mécanismes d’audit natifs de la base de données. Dans cet article, nous expliquons comment configurer DataSunrise et votre MS Azure MySQL pour effectuer le suivi des audits de DB.
Notez que ce guide décrit toutes les actions requises pour que le suivi des audits de DB fonctionne dès le départ. Supposons que vous ne disposiez ni d’une base de données ni des ressources Azure correspondantes. Pour suivre les étapes de ce guide, il vous suffit d’avoir DataSunrise installé sur votre machine et d’accéder au portail Microsoft Azure.
Connectez-vous au portail Microsoft Azure
Tout d’abord, connectez-vous au portail Microsoft Azure et suivez les étapes ci-dessous. Si vous n’êtes pas familier avec l’interface d’Azure, vous pouvez trouver utile d’utiliser le champ de recherche situé en haut de l’écran (« Rechercher des ressources, services et documents »).
Enregistrement d’une application Azure
DataSunrise utilisera cette application pour télécharger les fichiers journaux de votre MySQL depuis le conteneur Blob associé à votre compte de stockage. Suivez l’étape ci-dessous :
1. Naviguez vers Inscriptions d’applications -> Nouvelle inscription et enregistrez votre application. Notez que URI de redirection (facultatif) n’est pas requis.
2. Accordez à votre application les autorisations pour accéder aux conteneurs Blob.
Sur la page Autorisations API, cliquez sur Ajouter une autorisation
Dans l’onglet APIs Microsoft, sélectionnez Azure Storage puis sélectionnez Permissions déléguées et user_impersonation :

Cliquez sur Ajouter des autorisations pour appliquer les modifications
3. Créez un secret pour votre application afin qu’Azure puisse l’identifier.
- Naviguez vers Certificats et secrets
- Dans Secrets client, cliquez sur Nouveau secret client pour créer un nouveau secret. ENREGISTREZ LA VALEUR DU SECRET QUELQUE PART : vous en aurez besoin plus tard.
Création d’un groupe de ressources
Un groupe de ressources est nécessaire pour contenir les entités (ressources) associées à votre environnement de base de données.
Naviguez vers Groupes de ressources et créez un groupe de ressources.
Création d’un compte de stockage
Le compte de stockage contiendra les fichiers journaux de votre MySQL. DataSunrise récupérera ces journaux depuis votre compte de stockage.
1. Naviguez vers Comptes de stockage et créez un compte
2. Dans les paramètres du compte de stockage, sélectionnez votre groupe de ressources et nommez le compte de stockage. Laissez les autres paramètres par défaut
3. Naviguez vers Contrôle d’accès (IAM) et cliquez sur Ajouter -> Ajouter une attribution de rôle
Sélectionnez Lecteur : Suivant. Cliquez sur +Sélectionner des membres et sélectionnez votre application enregistrée. Revoyez et attribuez. Ceci est nécessaire pour que votre application puisse accéder aux fichiers journaux contenus dans les conteneurs Blob de votre compte de stockage :

4. Cliquez de nouveau sur Ajouter une attribution de rôle et sélectionnez Lecteur de données des blobs de stockage.
5. Cliquez sur +Sélectionner des membres et sélectionnez votre application enregistrée. Revoyez et attribuez
Création d’un serveur de base de données MySQL
Créez un serveur de base de données MySQL si vous n’en possédez pas déjà un. Sinon, modifiez les paramètres de votre base de données selon les étapes ci-dessous :
1. Naviguez vers Serveurs Azure Database for MySQL et créez un nouveau serveur : allez dans Créer -> Serveur flexible -> Créer
2. Fournissez tous les détails requis pour le serveur
3. Dans l’onglet Réseau, cochez Accès public… et ajoutez les règles de pare-feu requises. Terminez le déploiement.
4. Naviguez vers votre base de données MySQL -> Paramètres -> Paramètres du serveur et activez audit_log_enabled pour activer l’audit natif de votre base de données. Sélectionnez les types d’événements à enregistrer en configurant audit_log_events. Ajoutez les utilisateurs MySQL à inclure ou à exclure de l’enregistrement en configurant respectivement audit_log_exclude_users et audit_log_include_users.

Enregistrez les paramètres.
5. Configurez votre base de données pour stocker les journaux dans un compte de stockage associé.
Naviguez vers Surveillance -> Paramètres de diagnostic -> Ajouter un paramètre de diagnostic
Cochez MySqlAuditLogs et Archiver sur un compte de stockage puis sélectionnez votre compte de stockage :

Création d’une instance MySQL dans DataSunrise
Ouvrez la console Web de DataSunrise et naviguez vers Configuration -> Bases de données pour créer une instance de base de données MySQL (reportez-vous à la section « Création d’un profil de base de données cible » du guide de l’utilisateur de DataSunrise pour plus de détails).
Vous devrez fournir les informations suivantes :
1. Sélectionnez Suivi des journaux d’audit de DB dans les paramètres de l’instance. Remplissez tous les champs requis.

2. Copiez le ClientID et le TenantID de votre application Azure afin de permettre à DataSunrise d’utiliser l’application pour télécharger les fichiers journaux de votre MySQL :

3. Saisissez le Client Secret enregistré précédemment (reportez-vous à l’étape 3 de l’Enregistrement d’une application Azure).
4. Saisissez le Nom du conteneur Blob. Vous pouvez retrouver le nom de votre conteneur Blob dans les paramètres Azure sous Comptes de stockage -> votre compte -> Conteneurs :

Résultats de l’audit
Créez quelques règles d’audit pour votre base de données MySQL (reportez-vous à la section « Création d’une règle d’audit des données » du guide de l’utilisateur) et exécutez quelques requêtes sur votre base de données MySQL. Naviguez vers Audit -> Traçages transactionnels pour consulter les résultats de l’audit :
