41 lines
1.8 KiB
YAML
41 lines
1.8 KiB
YAML
|
|
---
|
||
|
|
# Journal des evenements du realm. Sans lui, Keycloak ne garde AUCUNE trace des
|
||
|
|
# connexions : ni qui est entre, ni pourquoi une authentification a echoue. Constate
|
||
|
|
# le 2026-08-08 en cherchant a diagnostiquer deux services qui n'aboutissaient pas —
|
||
|
|
# tout etait correct cote serveur, et il n'existait aucun moyen de savoir ce que
|
||
|
|
# l'utilisateur avait rencontre.
|
||
|
|
#
|
||
|
|
# C'est aussi une exigence d'exploitation : « un sysadmin l'exploite sans IA » suppose
|
||
|
|
# qu'il puisse lire lui-meme ce qui s'est passe.
|
||
|
|
|
||
|
|
- name: Lire la configuration du journal
|
||
|
|
ansible.builtin.uri:
|
||
|
|
url: "http://localhost:8080/admin/realms/{{ serveur_keycloak_realm }}/events/config"
|
||
|
|
headers:
|
||
|
|
Authorization: "Bearer {{ serveur_keycloak_pol_jeton.json.access_token }}"
|
||
|
|
register: serveur_keycloak_journal_actuel
|
||
|
|
no_log: true
|
||
|
|
|
||
|
|
- name: Composer la configuration attendue
|
||
|
|
ansible.builtin.set_fact:
|
||
|
|
serveur_keycloak_journal_attendu:
|
||
|
|
eventsEnabled: "{{ serveur_keycloak_journal_actif | bool }}"
|
||
|
|
eventsExpiration: "{{ serveur_keycloak_journal_retention | int }}"
|
||
|
|
adminEventsEnabled: "{{ serveur_keycloak_journal_admin | bool }}"
|
||
|
|
adminEventsDetailsEnabled: "{{ serveur_keycloak_journal_admin | bool }}"
|
||
|
|
|
||
|
|
- name: Activer le journal des évènements du realm
|
||
|
|
ansible.builtin.uri:
|
||
|
|
url: "http://localhost:8080/admin/realms/{{ serveur_keycloak_realm }}/events/config"
|
||
|
|
method: PUT
|
||
|
|
status_code: [204]
|
||
|
|
headers:
|
||
|
|
Authorization: "Bearer {{ serveur_keycloak_pol_jeton.json.access_token }}"
|
||
|
|
body_format: json
|
||
|
|
body: "{{ serveur_keycloak_journal_actuel.json | combine(serveur_keycloak_journal_attendu) }}"
|
||
|
|
no_log: true
|
||
|
|
changed_when: true
|
||
|
|
when: >-
|
||
|
|
(serveur_keycloak_journal_actuel.json | combine(serveur_keycloak_journal_attendu))
|
||
|
|
!= serveur_keycloak_journal_actuel.json
|