Aller au contenu
← Tous les projets

Plateforme de données · Projet de fin d'études

Analyse des journaux d'authentification

Un projet de fin d'études : un pipeline de données et des tableaux de bord qui transforment des journaux d'authentification bruts en événements consultables et en vues de reporting.

Projet réaliséPipeline et tableaux de bord réalisés en projet de fin d'études. Pas présenté comme une mise en production durable.

logs → index → alert
Illustration

Logs bruts

  • 12:04:31INFOauthlogin success user=•••
  • 12:04:31WARNauthlogin failed user=•••
  • 12:04:32ERRORauthtoken rejected
  • 12:04:32INFOauthlogout user=•••
  • 12:04:33INFOauthsession refresh
  • 12:04:33WARNauthlogin failed user=•••
  • 12:04:34INFOauthlogin success user=•••
  • 12:04:35ERRORauthmfa challenge timeout
  • 12:04:31INFOauthlogin success user=•••
  • 12:04:31WARNauthlogin failed user=•••
  • 12:04:32ERRORauthtoken rejected
  • 12:04:32INFOauthlogout user=•••
  • 12:04:33INFOauthsession refresh
  • 12:04:33WARNauthlogin failed user=•••
  • 12:04:34INFOauthlogin success user=•••
  • 12:04:35ERRORauthmfa challenge timeout

Événement structuré

{
  "level": "warn",
  "service": "auth",
  "event": "login_failed",
  "reason": "invalid_credentials"
}

Règle d'alerte

SI
login_failed
TAUX
au-dessus du seuil
ALORS
signaler dans le tableau de bord

Évaluation

Illustration de journaux d'authentification bruts analysés en documents structurés, puis consultés dans un tableau de bord.

Le problème

Les journaux d'authentification sont volumineux et non structurés. Sans pipeline, ils sont difficiles à rechercher, à analyser ou à consulter.

Contexte

Un projet de fin d'études : ingérer des événements d'authentification, les structurer, les rechercher, puis exposer des tableaux de bord. Aucune mise en production durable n'est revendiquée.

Mon rôle

J'ai conçu et construit le pipeline de l'ingestion aux tableaux de bord : parsing Logstash, indexation Elasticsearch, analyse Spark, et vues Kibana.

Ce que j'ai construit

Fonctionnalités construites

  1. 01Ingestion et parsing des journaux d'authentification
  2. 02Recherche et agrégation indexées
  3. 03Analyse batch sur les mêmes événements
  4. 04Tableaux de bord réalisés pour le projet

Décisions de conception

  • Parser et normaliser les événements à l'ingestion pour que la recherche et l'agrégation portent sur des enregistrements structurés.
  • Indexer dans Elasticsearch pour la recherche interactive ; réserver Spark aux analyses plus lourdes, en mode batch.
  • Exposer les événements traités dans des tableaux de bord Kibana, plutôt que de les laisser dans l'index seulement.
  1. 01Logstash ingère et analyse les journaux d'authentification.
  2. 02Elasticsearch indexe les événements pour la recherche et l'agrégation.
  3. 03Spark exécute les analyses plus lourdes sur les données.
  4. 04Les tableaux de bord Kibana exposent les événements traités.

Résultat

Un pipeline de données et des tableaux de bord ont été réalisés dans le cadre d'un projet de fin d'études. Ce n'est pas présenté comme une mise en production durable.

Architecture

Comment Analyse des journaux d'authentification s'articule.

Chaque étape, dans l'ordre. Sélectionnez un nœud pour voir son rôle.

  1. Événements d'authentification bruts émis par les systèmes étudiés.

  2. Ingère, analyse et normalise les événements en enregistrements structurés.

    • Logstash
  3. Indexe les événements structurés pour une recherche et une agrégation rapides.

    • Elasticsearch
  4. Exécute des analyses plus lourdes, en mode batch, sur les logs.

    • Spark
  5. Tableaux de bord et exploration au-dessus des données indexées.

    • Kibana
  6. Vues de reporting construites sur les événements d'authentification traités.

Stack

  • Logstash
  • Elasticsearch
  • Spark
  • Kibana

Projet suivant

Pipeline de questions-réponses documentaire

Un pipeline de génération augmentée par la recherche qui répond aux questions à partir d'un corpus de documents, grâce à la recherche vectorielle dans PostgreSQL. Preuve de concept : le travail n'a pas été poursuivi jusqu'au déploiement.