Set-OPS-Public/exemples/vault.exemple.yml
Daniel Allaire e93e8f4c1d console chez les locataires, collision de noms, et un fichier ecrase
Les deux locataires declarent leur console derriere oauth2-proxy. En oidc le
vestibule n ecoute que la boucle locale : le gabarit annoncait cette protection
en s en remettant au pare-feu, qui ouvrait le port depuis l edge — la console
etait joignable sans passer par la passerelle.

COLLISION REELLE : serveur_oauth2_proxy est mono-instance par machine, et la
table des noms publics etait indexee par GROUPE. La passerelle de la vigie se
croyait la console ; son URL de retour OIDC aurait vise l autre machine. Une
application nomme un COUPLE (machine, role). P67 ne le voyait pas parce qu elle
indexait comme la derivation qu elle garde — une garde qui reproduit le
raisonnement qu elle verifie ne verifie rien.

ET J AI ECRASE group_vars/serveur_ops.yml sans le regarder : 68 lignes
detruites, deux preuves tombees, et une explication fausse construite dessus. Le
git diff qui m avait rassure portait un glob developpe par le shell parent : il
n a rien matche et n a rien dit. Une commande qui ne trouve rien et une commande
qui trouve que rien n a change rendent le meme silence.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Crgis8CxCWkAGFA1ecBz3q
2026-09-15 11:47:50 -04:00

81 lines
3.1 KiB
YAML

---
# Voûte UNIQUE de l'instance — TOUS les secrets, un seul fichier, un seul mot de passe.
#
# Installation (un seul inventaire par instance : « production » dans le modèle socle) :
# 1. Copier ce gabarit vers la voûte de l'instance :
# cp exemples/vault.exemple.yml instance/inventories/production/group_vars/all/vault.yml
# 2. Renseigner les valeurs, puis chiffrer :
# ansible-vault encrypt instance/inventories/production/group_vars/all/vault.yml
# 3. Éditer ensuite sans jamais déchiffrer sur disque :
# ansible-vault edit instance/inventories/production/group_vars/all/vault.yml
#
# Ne JAMAIS versionner le fichier vault.yml (couvert par .gitignore).
# Le GUI ne stocke ni n'affiche ces valeurs : il n'en montre que les NOMS
# (panneau « Intrants de base »). Le mot de passe du vault est saisi au déploiement.
# --- Accès API Proxmox (clonage des VM) ---
proxmox_api_token_id: ""
proxmox_api_token_secret: ""
# --- AC / PKI interne (step-ca) ---
vault_step_ca_password: ""
vault_step_ca_fingerprint: ""
vault_step_ca_provisioner_password: ""
# --- Identité (LDAP / SSO) ---
vault_openldap_admin: ""
vault_ldap_sssd: ""
vault_keycloak_admin: ""
# --- Bases de données ---
vault_postgresql_keycloak: ""
vault_bd_keycloak: ""
vault_bd_forgejo: ""
vault_bd_icingadb: ""
# La base des COMPTES de la console (mode `db`) — distincte de celle du moteur.
vault_bd_icingaweb2: ""
# --- Forge (Forgejo) ---
vault_forgejo_admin: ""
vault_forgejo_secret_key: ""
vault_forgejo_internal_token: ""
# --- Observabilité / divers ---
vault_grafana_admin: ""
vault_redis: ""
# LA CONSOLE DE SUPERVISION, QUAND ELLE S'AUTHENTIFIE SEULE.
#
# `serveur_icingaweb2_auth: db` — le mode d'un SITE, qui n'a ni annuaire ni Keycloak.
# Icinga Web 2 gère ses comptes nativement ; ce mot de passe est celui du compte
# D'AMORÇAGE, celui qui permet d'entrer la première fois pour créer les autres dans
# l'interface. Inutile en mode `ldap` ou `external`.
vault_icingaweb2_admin: ""
# LA CONSOLE D'EXPLOITATION, QUAND ELLE S'AUTHENTIFIE SEULE.
#
# `serveur_ops_gui_auth: locale` — le repli d'un ecosysteme SANS annuaire (un SITE).
# Un ecosysteme qui a Keycloak reste en `oidc` et laisse cette cle VIDE : la console
# lance des deploiements et peut raser, un mot de passe partage devant ce pouvoir est un
# accident qui attend.
vault_setops_gui_admin: ""
# LE SECRET OIDC DE LA CONSOLE D'EXPLOITATION (mode `oidc`).
#
# Le GUI de Set-OPS n'a aucune authentification a lui : la passerelle est sa seule
# serrure, et ce secret est ce qui la lie a Keycloak. Vide chez un ecosysteme sans
# annuaire — un SITE — qui emploie alors le vestibule local.
vault_setops_console_oidc: ""
# LE COMPTE DE METRIQUES DE POSTGRESQL — lecture seule, role `pg_monitor`.
#
# Il ne lit que les vues de statistiques : pas une ligne de donnee applicative. Faire
# tourner l'exportateur en `postgres` serait donner les cles de la base pour lire des
# compteurs.
#
# VIDE = PAS D'EXPORTATEUR DU TOUT. Le role ne le pose pas, ne cree pas le compte, et
# Prometheus ne derive aucune cible. Degrader, jamais deviner — et surtout jamais un mot
# de passe par defaut.
vault_pg_exportateur: ""