RousselTMLEARNING

TP · Kibana et Elastic Observability : de la découverte à l'expertise

TP Final : Espaces et rôles pour deux équipes avec correction

La correction est intégrée au TP (Voir les encadrés de couleur vert)

Ce que vous allez apprendre dans ce TP
  • Créer des espaces
  • Écrire des rôles
  • Vérifier l'isolation

Introduction #

Ce que vous allez apprendre dans cette section
  • Créer des espaces
  • Écrire des rôles
  • Vérifier l'isolation

Contexte. Deux équipes partagent la même stack Elastic. L'équipe web ne doit voir ni les données ni les dashboards de l'équipe paiement.

Prérequis : TP 3 terminé  ·  Durée estimée : 40 min

Un Kibana partagé et cloisonné.

Mise en place #

Étapes guidées, avec leur correction.

  1. 1. Créer les index des équipes

    Pourquoi ? Des index nommés par équipe facilitent les droits par motif.

    Créez deux documents, l'un dans logs-app-web, l'autre dans logs-app-paiement.
    Voir la correction
    source elastic-start-local/.env && export PASS=$ES_LOCAL_PASSWORD
    curl -s -X POST localhost:9200/logs-app-web/_doc -u elastic:$PASS -H 'Content-Type: application/json' -d '{"@timestamp":"2026-10-19T10:00:00Z","msg":"page vue"}'
    curl -s -X POST localhost:9200/logs-app-paiement/_doc -u elastic:$PASS -H 'Content-Type: application/json' -d '{"@timestamp":"2026-10-19T10:00:00Z","msg":"paiement accepté"}'
  2. 2. Créer l'espace paiement

    Pourquoi ? Chaque équipe a son espace ; l'espace web existe depuis le TP 3.

    Créez l'espace equipe-paiement.
    Voir la correction
    curl -s -X POST localhost:5601/api/spaces/space -u elastic:$PASS -H 'kbn-xsrf: true' -H 'Content-Type: application/json' \
      -d '{"id": "equipe-paiement", "name": "Équipe paiement"}'
  3. 3. Écrire le rôle de l'équipe web

    Pourquoi ? Le rôle combine lecture des index web et accès en lecture à l'espace web uniquement.

    Créez le rôle lecteur_web puis l'utilisateur alice.
    Voir la correction
    curl -s -X PUT localhost:5601/api/security/role/lecteur_web -u elastic:$PASS -H 'kbn-xsrf: true' -H 'Content-Type: application/json' -d '{
      "elasticsearch": { "indices": [ { "names": ["logs-app-web*"], "privileges": ["read", "view_index_metadata"] } ] },
      "kibana": [ { "base": ["read"], "spaces": ["equipe-web"] } ] }'
    curl -s -X POST localhost:9200/_security/user/alice -u elastic:$PASS -H 'Content-Type: application/json' \
      -d '{"password": "alice-lab-2026", "roles": ["lecteur_web"]}'
  4. 4. Vérifier l'isolation

    Pourquoi ? La vérification se fait avec le compte restreint, pas avec le super-utilisateur.

    Avec alice, lisez les deux index puis listez les espaces accessibles.
    Voir la correction
    curl -s -u alice:alice-lab-2026 localhost:9200/logs-app-web/_search | jq '.hits.total.value'        # 1
    curl -s -u alice:alice-lab-2026 localhost:9200/logs-app-paiement/_search | jq '.error.type'          # security_exception
    curl -s -u alice:alice-lab-2026 localhost:5601/api/spaces/space | jq -r '.[].id'                     # equipe-web
  5. 5. Se connecter à l'interface

    Pourquoi ? Le ressenti utilisateur confirme la configuration.

    Connectez-vous à Kibana avec alice : quels espaces et quels menus voyez-vous ?
    Voir la correction

    Alice n'accède qu'à l'espace « Équipe web », en lecture seule : elle voit le dashboard importé mais ne peut ni le modifier ni ouvrir l'espace paiement.

Niveau de difficulté : ●●●○○ (3/5)

Mon suivi

  • ⏱ Durée estimée : ≈ 40 min

Connectez-vous pour suivre votre progression et prendre des notes. Se connecter

💬 Questions sur cette leçon

Aucune question pour l'instant : soyez le premier à demander de l'aide ou à partager votre configuration.

Poser une question sur cette leçon →

Articles recommandés

Administrer Kibana : espaces, rôles, utilisateurs et supervision

Organiser Kibana pour plusieurs équipes : espaces, rôles et privilèges sur les index et les fonct...

Bonnes pratiques Kibana et Elastic Observability

Check-list pour exploiter Kibana en production : versions, sécurité, espaces et rôles, dashboards...

Kibana Maps et Canvas : cartes géographiques et présentations

Créer des cartes avec Kibana Maps (couches de documents, d'agrégats, choroplèthes, ES|QL) et des ...

Kibana : rôle, installation et premiers pas

Ce qu'est Kibana dans la suite Elastic, comment l'installer avec Elasticsearch (start-local, Dock...

Kibana avancé : data views, Lens, dashboards, alerting et reporting

Exploiter Kibana en profondeur : data views et champs runtime, Discover, Lens et formules, dashbo...

Visualiser dans Kibana : Lens, dashboards et objets enregistrés

Construire des visualisations avec Lens, assembler des dashboards interactifs (filtres, contrôles...

Alertes, connecteurs et SLO dans Kibana

Créer des règles d'alerte dans Kibana (requête Elasticsearch, ES|QL, seuil personnalisé, logs), c...

Machine learning dans Elastic : détection d'anomalies et AIOps

Détecter automatiquement les comportements anormaux : jobs de détection d'anomalies, datafeeds, d...

Elastic Security : SIEM, règles de détection et investigation

Utiliser Elastic Security comme SIEM : sources de données ECS, types de règles de détection (quer...

Soutenir

♥ SOUTENIR

Soutenez RousselTM Learning

Les formations, articles, TP et attestations restent gratuits et sans publicité intrusive. Une contribution libre, du montant de votre choix, finance l’hébergement, les environnements de TP et l’écriture de nouveaux contenus.

Contribuer avec PayPal Montant libre · carte bancaire ou compte PayPalEn savoir plus
QR code PayPal
Ou scannez ce QR code avec votre téléphone

Merci, chaque contribution compte !