Monitorizando Azure AD Smart Lockout con Log Analytics

En mi anterior artículo hablamos de Azure AD Smart Lockout, pero… y si estoy interesado en monitorizarlos… ¿Cómo lo hago? Log Analytics es la respuesta, vamos a ello!

Lo primero que debemos de hacer es disponer de un WorkSpace de LogAnalytics, si no lo tenéis, ya estáis tardando en crearlo 😉

  • A continuación, nos iremos al Azure Active Directory, al apartado de Diagnostic Settings, y seleccionaremos la opción de Export Settings y seleccionaremos Audit Logs y Sign Ins (Ojo que debemos de tener licencia para ello).
  • Seleccionaremos la opción de que queremos enviar los logs a Log Analytics
  • Por último, guardamos

Ahora deberemos de esperar entre 5-10 minutos para empezar a tener datos en el workspace… y una vez esperado este tiempo, tendremos en el workspace de LogAnalytics unas nuevas tablas para empezar a jugar con ellas, que serán AuditLogs y SignInLogs.

Por ejemplo, si ejecutamos la siguiente consulta:

SigninLogs | limit 50

Obtendremos los últimos 50 inicios de sesión, pero no es lo que estamos buscando y como Log Analytics nos da una potencia enorme, vvamos a buscar el evento que genera Smart Lockout en particular (50053), y añadiremos un filtro a nuestra query (ojo con el lenguaje KQL que lo carga el diablo). En el siguiente ejemplo, filtraremos por ese evento en concreto y limitaremos la consulta a los últimos 7 días:

SigninLogs | where CreatedDateTime >= ago(7d) | where ResultType == "50053"

Genial, ya tenemos la información que queríamos. Ahora lo suyo es que creemos una alerta cada vez que se genera un evento de este tipo, en la propia consulta del log, veremos que tenemos un botón para crear una alerta

A partir de ahí, podremos ser notificados de este tipo de eventos, pero ojo con el número de alertas que creamos, ya que es un coste añadido dentro de Azure 😉

Hasta la próxima!

@albandrod
Cloud Solutions Architect