Question Automatisation desactivation user à date prévue AD

Plus d'informations
il y a 7 ans 10 mois #25373 par chaubert
Bonjour tout le monde et merci par avance pour vos lumières !
Je m'appelle Romain et je suis sur un BTS en alternance en support informatique avec l'objectif d'aller jusqu'à l'école d'ingé.

J'ai la volonté d'automatiser les taches d'exploitation sur mon entreprise et ai commencé à travailler sur powershell car je pense que c'est un outil vraiment puissant (pas besoin de vous convaincre n'est-ce pas ?:P ).
Mes connaissances sont plutôt basiques mais je me documente activement à ce sujet.

Mon premier objectif est de créer un script qui aurait le comportement suivant (je l'ai écrit en Francais pour structurer mon script par la suite):

Active-directory
- Importe le module active directory
-Importe le CSV avec les informations prénom, nom, date de sortie
-Pour chaque compte active directory, désactive les comptes à la $date de sortie
-Pour chaque compte active directory, supprime les groupes d’appartenance excepté stratégie-mdp et utilisateurs du domaine
-Pour chaque compte active directory, déplace le compte dans l’OU comptes désactivés

Exchange
-Importe la session exchange
-Masque les boites mails à la $date de sortie de chaque compte

Je n'ai pas encore trouvé le moyen de me connecter à la session exchange distante (il s'agit s'un serveur en interco) sans avoir à rentrer le mot de passe de manière manuelle... l'objectif étant un script qui bosse de manière automatique (le CSV est fourni par le client sur ses entrées/sorties)
La première ébauche ressemble à cela.

Je pense que c'est faux pour la partie suppression des groupes mais je n'arrive pas à le mettre en place.
N’hésitez pas à me conseiller ou me donner votre avis sur ce premier script.

Bonne journée


Write-host \"Import du module Active directory\"

Import-Module Active-directory


Write-Host \"Import des informations sur les comptes à désactiver\"
$csv = Import-Csv C:\Users\Romain\Desktop\HERMES.csv
$prenom = Import-Csv C:\Users\Romain\Desktop\HERMES.csv | Select-Object prenom
$nom = Import-Csv C:\Users\Romain\Desktop\HERMES.csv | Select-Object nom
$date = Import-Csv C:\Users\Romain\Desktop\HERMES.csv | Select-Object date
$user = $prenom.$nom


Write-host \"desactivation des utilisateurs à la date prévue\"

foreach ($user in $csv) {

disable-ADAccount $user -DateTime $date -format dd/MM/yyyy
}


Write-host \"Suppression des groupes de droits à la date prévue\"

foreach ($user in $csv) {

Remove-ADGroupMember $user -DateTime $date -format dd/MM/yyyy
}

Write-host \"Deplacement dans l'OU comptes desactivés\"

foreach ($user in $csv) {

Move-ADObject $user -targetpath 'comptes desactivés' -DateTime $date -format dd/MM/yyyy
}

write-host \"import de la session exchange\"

Set-Mailbox <Identity> -MailboxPlan GalDisabledMailboxPlan

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.030 secondes
Propulsé par Kunena