Set-OPS-Public/roles/serveur_icingaweb2/templates/resources.ini.j2
Daniel Allaire 51dae506fb icingaweb2 : le backend natif remplace un vestibule de trop
L exploitant : Icinga Web 2 permet nativement de gerer des comptes ; ce genre
d intervention n est pertinente que pour integrer Icinga a Keycloak chez les
tenants.

Le mode locale posait un auth_basic nginx devant le backend external. Ca
marchait, et ca reinventait une page de connexion devant une application qui en
a une — en privant l exploitant de la gestion des comptes dans l interface. Un
vestibule n a de sens que devant une application qui ne sait pas
s authentifier ; le GUI de Set-OPS est dans ce cas, Icinga Web 2 non.

Mode db : backend natif, groupes natifs, base a elle (les tables du moteur sont
reecrites par ses migrations). Le moteur pose UN compte d amorcage et ne
l ecrase jamais. D-66 redevient applicable sans annuaire, les groupes vivant en
base.

Deux pieges du renommage : une garde ecrite en negation a cesse de garder, et le
bloc de la base pose apres le rendu des .ini a produit un echec CENSURE par
no_log.

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

48 lines
1.8 KiB
Django/Jinja

; Géré par Set-OPS (rôle serveur_icingaweb2). Ne pas éditer à la main.
[icingadb]
type = "db"
db = "pgsql"
host = "{{ resoudre_base_db_host }}"
port = "{{ resoudre_base_db_port }}"
dbname = "{{ resoudre_base_entree.base }}"
username = "{{ resoudre_base_entree.proprietaire }}"
password = "{{ resoudre_base_db_password }}"
charset = "UTF8"
{% if serveur_icingaweb2_db_sslmode | default('') %}
; LE SERVEUR IMPOSE `hostssl` : sans ces deux lignes, PostgreSQL refuse la connexion et
; l'erreur parle de `pg_hba`, pas de chiffrement. Derive de ce que sert le serveur — voir
; `resoudre_base` et P78.
ssl_mode = "{{ serveur_icingaweb2_db_sslmode }}"
ssl_ca = "{{ serveur_icingaweb2_db_sslrootcert }}"
{% endif %}
{% if serveur_icingaweb2_auth == 'db' %}
; LA BASE DES COMPTES DE LA CONSOLE — distincte d'`icingadb`, qui est celle du MOTEUR.
; Meler les deux ferait disparaitre les comptes au premier passage des migrations du
; moteur, sans que personne n'ait touche aux comptes.
[icingaweb_db]
type = "db"
db = "pgsql"
host = "{{ serveur_icingaweb2_db_host }}"
port = "{{ serveur_icingaweb2_db_port }}"
dbname = "{{ serveur_icingaweb2_db_base }}"
username = "{{ serveur_icingaweb2_db_utilisateur }}"
password = "{{ serveur_icingaweb2_db_motdepasse }}"
charset = "UTF8"
{% if serveur_icingaweb2_db_sslmode | default('') %}
ssl_mode = "{{ serveur_icingaweb2_db_sslmode }}"
ssl_ca = "{{ serveur_icingaweb2_db_sslrootcert }}"
{% endif %}
{% endif %}
{% if serveur_icingaweb2_auth not in ('db',) %}
[icingaweb_ldap]
type = "ldap"
hostname = "{{ serveur_icingaweb2_ldap_url | regex_replace('^ldaps?://', '') }}"
port = "{{ serveur_icingaweb2_ldap_port }}"
encryption = "ldaps"
root_dn = "{{ serveur_icingaweb2_ldap_base }}"
bind_dn = "{{ serveur_icingaweb2_ldap_bind_dn }}"
bind_pw = "{{ serveur_icingaweb2_ldap_bind_password }}"
timeout = "5"
{% endif %}