param (
[string]$NomUtilisateur,
[string]$CheminBase = « D:\Users »,
[string]$NomGroupe = « Superviseurs »
)
# Récupère l’objet utilisateur AD
$utilisateur = Get-ADUser -Identity $NomUtilisateur
if (-not $utilisateur) {
Write-Error « Utilisateur ‘$NomUtilisateur’ introuvable dans Active Directory. »
exit
}
# Définition du chemin du dossier personnel
$cheminDossier = Join-Path $CheminBase $NomUtilisateur
# Créer le dossier s’il n’existe pas
if (-not (Test-Path $cheminDossier)) {
New-Item -Path $cheminDossier -ItemType Directory
Write-Host « Dossier créé : $cheminDossier »
}
# Supprimer les permissions existantes
icacls $cheminDossier /inheritance:r
icacls $cheminDossier /remove:g « Users » /T
# Définir les permissions :
# – Utilisateur : Contrôle total
# – Groupe (ex: Superviseurs) : Lecture/Écriture
$utilisateurAD = « $($utilisateur.SamAccountName) »
$groupeAD = $NomGroupe
icacls $cheminDossier /grant « $utilisateurAD:(OI)(CI)F » /T
icacls $cheminDossier /grant « $groupeAD:(OI)(CI)M » /T
Write-Host « Permissions définies pour $utilisateurAD et $groupeAD sur $cheminDossier »
