Monitoring d’Azure Active Diretory avec Azure Monitor

Je vous propose de voir comment créer des règles dans Azure Monitor afin de surveiller certains usages ou connexions dans Azure Active Directory.

Logs existants

Par défaut, vous disposez d’un espace dans le portail Azure dans lequel vous pouvez retrouver toutes les logs et activités correspondent à Azure Active Directory.

Pour y avoir accès depuis le portail Azure, il vous suffit de cliquer sur Azure Active Directory puis dans la section Monitoring sur Audit logs. Vous pouvez également utiliser la partie Sign-ins pour obtenir la liste des dernières connexions.

Audit logs depuis Azure Active Directory
Audit logs depuis Azure Active Directory

Archivage et transfert des Logs vers Log Analytics

La prochaine étape consiste à archiver l’ensemble de ces données / logs pour les transférer vers un workspace Log Analytics. C’est ce qui nous permettra de retenir l’ensemble des Logs et de pouvoir faire des requêtes spécifiques – pour mieux y chercher de l’information en fonction de critères spécifiques.

Par défaut, il existe plusieurs modes de facturations qui vous permettent de retenir plus ou moins longtemps le volume de Logs. Le free tiers vous permet de retenir jusqu’à 500 Mo avec une historisation sur 7 jours (disponible uniquement pour les souscriptions créées avant Avril 2018 – sinon c’est pay-as-you-go).

Toujours dans Azure Active Directory puis Monitoring, Audit Logs. Repérez le bouton tout en haut et cliquez sur Export Data Settings. Sélectionnez la seule option : Add diagnostic setting.

Export settings - Logs Active Directory
Export settings – Logs Active Directory

L’objectif est d’exporter l’ensemble des logs dans notre workspace Log Analytics. Vous pouvez définir ici ce que vous souhaitez faire de ces logs :

  • Archiver l’ensemble dans un Storage Account ?
  • L’envoyer vers un Event Hub pour d’autres traitements ?
  • L’envoyer vers Log Analytics. C’est cette option qui nous intéresse dans l’immédiat.

Choisissez ensuite toutes les Logs à exporter. Par défaut, je coche toutes les cases :

  • AuditLogs
  • SigninLogs

Votre Log Analytics workspace doit avoir été créé préalablement.

Désormais, toutes les Logs d’Audit seront également disponibles dans votre Log Analytics workspace pour la durée et la quantité de Logs que vous avez choisi (rétention, etc.).

Utilisation de votre Log Analytics workspace

Log Analytics workspace - Query
Log Analytics workspace – Query

Une fois dans votre Log Analytics workspace, dirigez-vous dans la section General puis Logs pour accéder au gestionnaire de Query.

search *

La commande ci-dessus vous permet de voir pour la durée sélectionnée (menu déroulant tout en haut), toutes les entrées dans toutes les différentes tables de votre workspace de manière chronologique.

Vous pouvez exécuter les commandes suivantes :

AuditLogs
SignInLogs

Pour voir les dernières entrées dans ces 2 tables. La complétion automatique ajoutera à chaque fois un pipe – supprimez le pour l’instant.

Log Analytics workspace - Query (2)
Log Analytics workspace – Query (2)

On peut ainsi voir les dernières entrées dans le journal d’événements SigninLogs. On note la présence d’événements traçant l’activité d’un utilisateur ayant dû changé son mot de passe qui était expiré.

Créer une alerte dans Azure Monitor

Imaginons que l’on souhaite être averti lorsqu’un utilisateur se connecte (c’est simplement pour l’exemple).

Log Analytics workspace - Query (3)
Log Analytics workspace – Query (3)

Je vais utiliser la Query suivante pour tracer uniquement les activités de connexion d’un utilisateur en particulier (dans mon cas, mon compte).

SigninLogs
| where Identity == "Thibault *******"

Pour créer une nouvelle Alerte, utilisez le bouton New alert rule tout en haut à droite.

Log Analytics workspace - Seuil
Log Analytics workspace – Seuil

Cliquez sur la Requête et choisissez la configuration pour le seuil (tous les combien vous souhaitez créer une alerte).

Il ne reste plus qu’à définir un Action Group. C’est ce qui va nous permettre de définir l’action que l’on souhaite effectuer lorsque l’alerte est levée. Cliquez sur Create action group.

Création d'une alerte Azure Monitor
Création d’une alerte Azure Monitor

Par défaut, je souhaite simplement recevoir un email. Mais vous pouvez également choisir d’envoyer un SMS ou même un notification Push. 🙂

Création d'un Action group
Création d’un Action group

Finalement, il nous reste encore quelques réglages. Vous pouvez choisir le titre de l’email ainsi qu’un commentaire pour le contenu du mail.

N’oubliez d’activer l’option Enable rule upon creation – si vous souhaitez activer la règle immédiatement après avoir cliqué sur Create alert rule.

Vous recevrez une confirmation de la mise en place de l’alerte – et sous peu, une première alerte ! 🙂

Confirmation de l'inscription à l'action group
Confirmation de l’inscription à l’action group
Exemple d'alerte
Exemple d’alerte

Pour aller plus loin

  • Log Analytics workspace vous permet même de créer des graphiques que vous pourrez publier/partager sur le Dashboard de votre portail Azure. Plus d’infos sur le Technet via ce lien. 🙂
Log Analytics workspace - Graphique
Log Analytics workspace – Graphique
  • Le language utilisé par le créateur de Query est appelé Kusto. Plus d’infos sur le Technet ici et .