- 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
37 lines
1.0 KiB
Python
Executable File
37 lines
1.0 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""
|
|
extract-distribution-csv.py — Extrait les colonnes pour distribution Teams.
|
|
|
|
Input : users-credentials.csv (sortie de import-furious-to-zitadel.py)
|
|
Output : distribution-teams.csv (3 colonnes : Nom complet, Email, Mot de passe)
|
|
|
|
Auteur : Hedi Kalboussi
|
|
Date : 5 juin 2026
|
|
"""
|
|
|
|
import csv
|
|
import os
|
|
from pathlib import Path
|
|
|
|
SCRIPT_DIR = Path(__file__).parent
|
|
INPUT = SCRIPT_DIR / "users-credentials.csv"
|
|
OUTPUT = SCRIPT_DIR / "distribution-teams.csv"
|
|
|
|
if not INPUT.exists():
|
|
print(f"❌ Fichier {INPUT} manquant")
|
|
exit(1)
|
|
|
|
count = 0
|
|
with open(INPUT, newline="", encoding="utf-8") as fin, \
|
|
open(OUTPUT, "w", newline="", encoding="utf-8") as fout:
|
|
reader = csv.DictReader(fin)
|
|
writer = csv.writer(fout)
|
|
writer.writerow(["Nom complet", "Email", "Mot de passe"])
|
|
for row in reader:
|
|
full_name = f"{row['first_name']} {row['last_name']}"
|
|
writer.writerow([full_name, row["email"], row["password"]])
|
|
count += 1
|
|
|
|
os.chmod(OUTPUT, 0o600)
|
|
print(f"✅ {count} users écrits dans {OUTPUT}")
|