Partager via


Commencez l'audit de Azure SQL Managed Instance

Applies to :Azure SQL Managed Instance

Cet article vous apprend à configurer auditing avec SQL Server Audit dans Azure SQL Managed Instance. L’audit effectue le suivi des événements de base de données et les écrit dans un journal d’audit dans votre compte de stockage Azure.

Configurer l’audit de votre instance pour stockage Azure

La section suivante décrit la configuration de l’audit sur votre instance managée SQL.

  1. Accédez au portail Azure.

  2. Créez un stockage Azure container où sont stockés les journaux d’audit.

    1. Accédez au compte de stockage Azure où vous souhaitez stocker vos journaux d’audit.

      • Utilisez un compte de stockage dans la même région que l’instance managée SQL pour éviter les lectures/écritures interrégions.
      • Si votre compte de stockage se trouve derrière un Réseau virtuel ou un pare-feu, consultez Accéder à un virtual network.
      • Si vous modifiez la période de rétention de 0 (rétention illimitée) en toute autre valeur, la rétention s’applique uniquement aux journaux écrits après la modification de la valeur de rétention. Les journaux écrits pendant la période pendant laquelle la rétention a été définie à un nombre illimité sont conservés, même après l’activation de la rétention.
    2. Dans le compte de stockage, accédez à Vue d’ensemble, puis sélectionnez Objets blob.

      Screenshot montrant le widget Azure Blobs widget.

    3. Dans le menu supérieur, sélectionnez + Conteneur pour créer un conteneur.

      Capture d’écran montrant l’icône Créer un conteneur d’objets blob.

    4. Donnez un Nom au conteneur, définissez le Niveau d’accès public sur Privé, puis sélectionnez OK.

      Capture d’écran montrant la configuration Créer un conteneur d’objets blob.

    Important

    Les clients souhaitant configurer un magasin de journaux immuable pour leurs événements d’audit au niveau du serveur ou de la base de données doivent suivre les instructions fournies par stockage Azure. (Assurez-vous de sélectionner Autoriser les ajouts supplémentaires lorsque vous configurez le stockage immuable de blobs.)

  3. Après avoir créé le conteneur pour les journaux d’audit, il existe deux façons de le configurer comme cible pour les journaux d’audit : using T-SQL ou utilisation de l’interface utilisateur SQL Server Management Studio (SSMS) :

  • Configurez le stockage blob des journaux d’audit avec T-SQL :

    1. Dans la liste des conteneurs, sélectionnez le conteneur que vous venez de créer, puis Propriétés du conteneur.

      Capture d’écran montrant le bouton Propriétés du conteneur d’objets blob.

    2. Copiez l’URL du conteneur en sélectionnant l’icône Copier, puis enregistrez-la (par exemple dans le Bloc-notes) pour plus tard. L’URL du conteneur doit être au format https://<StorageName>.blob.core.windows.net/<ContainerName>

      Capture d’écran montrant l’URL de copie du conteneur Blob.

    3. Générez un jeton stockage Azure SAS pour accorder des droits d’accès d’audit d’instance managée SQL au compte de stockage :

      • Accédez au compte de stockage Azure où vous avez créé le conteneur à l’étape précédente.

      • Sélectionnez Signature d’accès partagé dans le menu Paramètres de stockage.

        Capture d’écran de l’icône Signature d’accès partagé dans le menu des paramètres de stockage.

      • Configurez le SAS comme suit :

        • Services autorisés : Objet blob

        • Date de début : pour éviter tout problème lié aux fuseaux horaires, utilisez la date de la veille

        • Date de fin : choisissez la date à laquelle ce jeton SAS arrive à expiration.

          Note

          Pour éviter les échecs d’audit, renouvelez le jeton à l’expiration.

        • Sélectionnez Générer SAS.

          Capture d’écran montrant la configuration SAS.

      • Le jeton SAS apparaît en bas. Copiez le jeton en sélectionnant l’icône de copie et enregistrez-le (par exemple, dans le Bloc-notes) pour une utilisation ultérieure.

        Capture d’écran montrant comment copier le jeton SAP.

        Important

        Supprimez le point d’interrogation (?) au début du jeton.

    4. Connectez-vous à votre instance managée SQL via SQL Server Management Studio ou tout autre outil pris en charge.

    5. Exécutez l’instruction T-SQL suivante pour créer des informations d’identification à l’aide de l’URL du conteneur et du jeton SAS créés lors des étapes précédentes :

      CREATE CREDENTIAL [<container_url>]
      WITH IDENTITY='SHARED ACCESS SIGNATURE',
      SECRET = '<SAS KEY>'
      GO
      
    6. Exécutez l’instruction T-SQL suivante pour créer un audit de serveur (choisissez votre propre nom d’audit et utilisez l’URL du conteneur que vous avez créée lors des étapes précédentes). Si aucune valeur n’est spécifiée, la valeur par défaut de RETENTION_DAYS est 0 (conservation illimitée) :

      CREATE SERVER AUDIT [<your_audit_name>]
      TO URL (PATH ='<container_url>', RETENTION_DAYS = <integer>);
      GO
      
    7. Continuez en créant une spécification d’audit du serveur ou une spécification d’audit de la base de données.

  • Configurer le stockage BLOB pour les journaux d’audit, avec SQL Server Management Studio 18 ou une version ultérieure :

    1. Connectez-vous à l’instance managée SQL à l’aide de l’interface utilisateur SQL Server Management Studio.

    2. Développez la note racine de Explorateur d'objets.

    3. Développez le nœud Sécurité, cliquez avec le bouton droit sur le nœud Audits, puis sélectionnez Nouvel audit :

      Capture d’écran montrant comment développer le nœud Sécurité et le nœud Audit.

    4. Vérifiez que URL est sélectionné dans Destination de l’audit, puis sélectionnez Parcourir :

      Screenshot montrant comment parcourir stockage Azure.

    5. (Facultatif) Connectez-vous à votre compte Azure :

      Screenshot montrant comment se connecter à Azure.

    6. Sélectionnez un abonnement, un compte de stockage et un conteneur d’objets blob dans les listes déroulantes, ou créez votre propre conteneur en sélectionnant Créer. Une fois que vous avez terminé, sélectionnez OK :

      Sélectionnez l'abonnement Azure, le compte de stockage, et le conteneur blob.

    7. Sélectionnez OK dans la boîte de dialogue Créer un audit.

      Note

      Lorsque vous utilisez SQL Server Management Studio interface utilisateur pour créer un audit, des informations d’identification au conteneur avec une clé SAP sont créées automatiquement.

Après avoir configuré le conteneur d’objets blob comme cible pour les journaux d’audit, créez et activez une spécification d’audit de serveur ou une spécification d’audit de base de données comme vous le feriez pour SQL Server :

Utilisez l’instruction T-SQL suivante pour activer l’audit du serveur :

ALTER SERVER AUDIT [<your_audit_name>]
WITH (STATE = ON);
GO

Pour toute information supplémentaire :

Audit des opérations de Support Microsoft

L'audit des opérations de Support Microsoft pour SQL Managed Instance vous permet d'auditer les opérations des ingénieurs Microsoft support lorsqu'ils doivent accéder à votre serveur lors d'une demande de support. L’utilisation de cette fonctionnalité, ainsi que votre audit, permet une plus grande transparence pour votre personnel, ainsi que la détection des anomalies, la visualisation des tendances et la protection contre la perte de données.

Pour activer l’audit des opérations de Support Microsoft, accédez à Create Audit sous Security>Audit dans votre instance sql Manage, puis sélectionnez Microsoft support opérations.

Capture d’écran de l’icône Créer un audit.

Note

Vous devez créer un audit de serveur séparé pour l’audit des opérations Microsoft. Si vous activez cette case à cocher pour un audit existant, elle remplace l’audit et enregistre uniquement les opérations de support.

Configurer l’audit pour votre serveur vers Event Hubs ou les journaux Azure Monitor

Les journaux d’audit d’une instance gérée SQL peuvent être envoyés à Azure Event Hubs ou aux journaux Azure Monitor. Cette section explique comment effectuer cette configuration :

  1. Dans le portail Azure, accédez à l’instance SQL managée.

  2. Sélectionnez Paramètres de diagnostic.

  3. Sélectionnez Activer les diagnostics. Si les diagnostics sont déjà activés, +Ajouter un paramètre de diagnostic est disponible à la place.

  4. Sélectionnez SQLSecurityAuditEvents dans la liste des journaux d’activité.

  5. Si vous configurez les opérations de support Microsoft, sélectionnez DevOps operations Audit Logs dans la liste des journaux.

  6. Sélectionnez une destination pour les événements d’audit : Event Hubs, journaux Azure Monitor ou les deux. Configurez pour chaque cible les paramètres requis (par exemple, Log Analytics espace de travail).

  7. Sélectionnez Enregistrer.

    Capture d’écran montrant comment configurer les paramètres de diagnostic.

  8. Connectez-vous à l’instance managée SQL à l’aide de SQL Server Management Studio (SSMS) ou d’un autre client pris en charge.

  9. Exécutez l’instruction T-SQL suivante pour créer un audit du serveur :

    CREATE SERVER AUDIT [<your_audit_name>] TO EXTERNAL_MONITOR;
    GO
    
  10. Créez et activez une spécification d’audit de serveur ou une spécification d’audit de base de données comme vous le feriez pour SQL Server :

  11. Activez l’audit du serveur créé à l’étape 8 :

    ALTER SERVER AUDIT [<your_audit_name>]
    WITH (STATE = ON);
    GO
    

Configuration de l’audit à l’aide de T-SQL

-- Create audit without OPERATOR_AUDIT - Will audit standard SQL Audit events
USE [master];
GO

CREATE SERVER AUDIT testingauditnodevops TO EXTERNAL_MONITOR;
GO

CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_nodevops
FOR SERVER AUDIT testingauditnodevops ADD (SUCCESSFUL_LOGIN_GROUP),
    ADD (BATCH_COMPLETED_GROUP),
    ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO

ALTER SERVER AUDIT testingauditnodevops
    WITH (STATE = ON);
GO

-- Create separate audit without OPERATOR_AUDIT ON - Will audit Microsoft Support Operations
USE [master]

CREATE SERVER AUDIT testingauditdevops TO EXTERNAL_MONITOR
    WITH (OPERATOR_AUDIT = ON);
GO

CREATE SERVER AUDIT SPECIFICATION testingaudit_Specification_devops
FOR SERVER AUDIT testingauditdevops ADD (SUCCESSFUL_LOGIN_GROUP),
    ADD (BATCH_COMPLETED_GROUP),
    ADD (FAILED_LOGIN_GROUP)
WITH (STATE = ON);
GO

ALTER SERVER AUDIT testingauditdevops
    WITH (STATE = ON);
GO

Consommer les journaux d’audit

Utiliser les logs stockés dans stockage Azure

Il existe plusieurs méthodes que vous pouvez utiliser pour afficher les journaux d’audit de blob.

Consommer les logs stockés dans Event Hubs

Pour utiliser les données des journaux d’audit à partir d’Event Hubs, vous devez configurer un flux pour consommer des événements et les écrire dans une cible. Pour plus d’informations, consultez la documentation Azure Event Hubs.

Consommer et analyser les journaux stockés dans les journaux d’activité de Azure Monitor

Si les journaux d'audit sont écrits dans Azure Monitor journaux, ils sont disponibles dans l'espace de travail Log Analytics, où vous pouvez exécuter des recherches avancées sur les données d'audit. En guise de point de départ, accédez à l’espace de travail Log Analytics. Dans la section Général, sélectionnez Journaux et entrez une requête simple, par exemple search "SQLSecurityAuditEvents" pour afficher les journaux d’audit.

Azure Monitor journaux vous donne des aperçus opérationnels en temps réel à l’aide de recherche intégrée et de tableaux de bord personnalisés pour analyser facilement des millions d’enregistrements sur toutes vos charges de travail et serveurs. Pour plus d’informations sur le langage et les commandes de recherche des journaux Azure Monitor, consultez référence de recherche des journaux Azure Monitor.