| modules | ||
| .gitignore | ||
| app.ps1 | ||
| groups.json | ||
| readme.md | ||
AdToBrevo PowerShell Scripts
Description
Scripts PowerShell pour synchroniser les groupes et utilisateurs d'Active Directory avec Brevo via l'API.
Inclut un service de logging avec rotation automatique des fichiers de log.
Structure du projet
AdToBrevo/
│
├─ modules/
│ ├─ AdService.ps1 # Fonctions pour récupérer les utilisateurs et emails depuis AD
│ ├─ ApiService.ps1 # Fonctions pour interagir avec l'API Brevo
│ └─ LogService.ps1 # Service de logging avec rotation des fichiers
│
├─ logs/ # Dossier de logs (ignoré par Git)
├─ groups.json # Configuration des groupes à synchroniser
├─ app.ps1 # Script principal de synchronisation
└─ .gitignore # Ignorer fichiers temporaires et logs
Prérequis
- PowerShell 5.1 ou supérieur
- Module ActiveDirectory
- Clé API Brevo valide
Configuration
- Définir la clé API dans un fichier config.env à la racine du projet:
API_KEY=xxxxx
- Mettre à jour
groups.jsonavec vos groupes AD et leurs correspondances Brevo :
[
{ "Nom": "groupe_1", "Id": "1" },
{ "Nom": "groupe_2", "Id": "2" },
{ "Nom": "...", "Id": ".." }
]
Le champ Nom doit correspondre à l’attribut displayName de l’ActiveDirectory. Le champ Id correspond au champ id de la liste, visible dans l’interface de Brevo.
- Les logs sont créés dans le dossier
logsavec rotation quotidienne et suppression après 5 jours.
Usage
- Exécuter le script principal:
.\app.ps1