- 6 docs racine (README, HANDOVER, ARCHITECTURE, DECISIONS, INSTALL, OPERATIONS) - 9 docs thématiques dans docs/ - 10 templates docker-compose dans configs/ - 7 scripts Python/Shell d'import Furious vers Zitadel - 2 matrices RBAC Etat infra au 5 juin 2026 : - 88 users Furious importes dans Zitadel - 8 roles RBAC crees et attribues - Intranet filtre les cartes selon role (Approche A) - 7 outils SSO operationnels
6.1 KiB
6.1 KiB
Seize Consulting — Infrastructure SSO & RBAC
Documentation complète de l'infrastructure auto-hébergée de Seize Consulting. Stack Docker sur Scaleway, SSO Zitadel, RBAC sur intranet, import automatisé depuis Furious Squad.
Dernière mise à jour : 5 juin 2026 Mainteneur sortant : Hedi Kalboussi (HKA) Repère : Jour 7 — Import 88 users + RBAC opérationnel
🚀 Démarrage rapide pour le nouveau mainteneur
Si tu reprends ce projet, lis dans cet ordre :
- HANDOVER.md — Ce qui marche, ce qui reste à faire, alertes, secrets exposés
- ARCHITECTURE.md — Comprendre comment tout s'imbrique
- DECISIONS.md — Pourquoi tel choix plutôt qu'un autre
- OPERATIONS.md — Comment maintenir, dépanner, ajouter un outil
- INSTALL.md — Comment redéployer from scratch sur un nouveau serveur
📋 État actuel de l'infrastructure (au 5 juin 2026)
Serveur
- Provider : Scaleway
- OS : Debian 13 (Trixie)
- Docker : 29.5.1
- IP publique : 151.115.148.243 (à ne pas exposer dans la doc publique)
- Domaine principal :
seizeconsulting.com
Services en production
| Service | URL | Rôle | SSO |
|---|---|---|---|
| Traefik | traefik.seizeconsulting.com |
Reverse proxy + TLS | ✅ |
| Zitadel | sso.seizeconsulting.com |
Identity Provider (IDP) | N/A |
| Intranet | intranet.seizeconsulting.com |
Page d'accueil + RBAC | ✅ |
| Gitea | git.seizeconsulting.com |
Forge Git | ✅ auto-registration |
| n8n | n8n.seizeconsulting.com |
Workflows | ✅ |
| Portainer | portainer.seizeconsulting.com |
Gestion Docker | ✅ |
| Code Server | code.seizeconsulting.com |
IDE web | ✅ |
| Uptime Kuma | status.seizeconsulting.com |
Monitoring | ✅ |
Utilisateurs Zitadel
- 88 collaborateurs Seize importés depuis Furious Squad (jour 7)
- 1 admin technique :
zitadel-admin - 1 service account :
furious-import-service(IAM_USER_MANAGER) - 1 client technique :
login-client(auto-créé par Zitadel)
RBAC (Approche A : filtrage côté intranet)
- 8 rôles dans le project Zitadel "Infra Seize" :
direction,manager,expert,consultant_senior,consultant_junior,alternant,stagiaire,support - Filtrage : l'intranet HTML cache/affiche les cartes selon le rôle de l'user (lu via fichier JSON statique
roles-mapping.json) - Limitation acceptée : un user qui connaît l'URL directe d'un outil bypass le filtre
🗂️ Structure du repo
seize-infra-doc/
├── README.md # ← Tu es ici
├── HANDOVER.md # 🚨 À LIRE EN PRIORITÉ
├── ARCHITECTURE.md # Vue d'ensemble technique
├── DECISIONS.md # Choix architecturaux et anti-patterns
├── INSTALL.md # Procédure d'install from scratch
├── OPERATIONS.md # Maintenance, dépannage, ajouts
├── install.sh # Script d'installation modulaire
├── .env.example # Template variables d'environnement
│
├── docs/ # Documentation thématique détaillée
│ ├── 01-dns-prerequis.md
│ ├── 02-traefik-setup.md
│ ├── 03-zitadel-setup.md
│ ├── 04-oauth2-proxy-pattern.md
│ ├── 05-applications.md
│ ├── 06-import-furious.md
│ ├── 07-rbac-intranet.md
│ ├── 08-secrets-management.md
│ └── 09-troubleshooting.md
│
├── configs/ # Templates docker-compose anonymisés
│ ├── traefik/
│ ├── zitadel/
│ ├── intranet/
│ ├── oauth2-proxy/
│ ├── gitea/
│ ├── n8n/
│ ├── portainer/
│ ├── code-server/
│ ├── uptime-kuma/
│ └── postgres/
│
├── scripts/ # Scripts opérationnels
│ ├── furious-to-zitadel/ # Scripts Python import users
│ └── intranet/ # Template index.html avec RBAC
│
└── matrices/ # Matrices RBAC et mappings
├── rbac-matrix.md
└── job-title-to-role.csv
⚠️ Avertissements importants
- Authentik tourne encore sur le serveur mais n'est plus utilisé (migration faite vers Zitadel). À supprimer pour libérer ressources.
- Redis tourne encore — vérifier s'il est utilisé par autre chose avant suppression.
- Secrets exposés dans des conversations IA : voir HANDOVER.md pour la liste des rotations à faire.
- SMTP non configuré dans Zitadel : les emails de bienvenue/reset password ne partent pas. Distribution des mdp temporaires se fait manuellement via Teams.
- Migration outils gratuits vs licences pro : décision business reportée — voir DECISIONS.md.
🆘 Support
- Mainteneur sortant : Hedi Kalboussi (
HKA) - Sponsor projet : Philippe Spoljaric (
PSP, Admin Infra) - CEO : Pierre-Yves Tachon (
PYT)
Pour toute question, contacter d'abord Hedi pour passation, puis Philippe pour décisions architecturales.
📜 Historique du projet
| Jour | Date | Étape majeure |
|---|---|---|
| J1 | 20 mai 2026 | Provisioning Scaleway + Docker + premiers tests |
| J2 | 21 mai 2026 | Première tentative SSO via Authentik |
| J3 | 26-29 mai 2026 | Migration Zitadel, 7 apps SSO configurées |
| J4 | 30 mai 2026 | Gitea auto-registration, fix bug Traefik authRequestHeaders |
| J5 | 1-2 juin 2026 | Analyse Furious API, plan migration outils gratuits |
| J6 | 3-4 juin 2026 | Préparation import, briefings Philippe |
| J7 | 5 juin 2026 | Import 88 users + RBAC opérationnel |
🔗 Liens utiles
- Console Zitadel : https://sso.seizeconsulting.com/ui/console
- Dashboard Traefik : https://traefik.seizeconsulting.com (direction only)
- Gitea : https://git.seizeconsulting.com
- Documentation Zitadel : https://zitadel.com/docs
- Documentation OAuth2-Proxy : https://oauth2-proxy.github.io/oauth2-proxy/
- Documentation Traefik : https://doc.traefik.io/traefik/