Question
Mot de passe par lot
- Thomas
- Auteur du sujet
- Hors Ligne
- Nouveau membre
-
Réduire
Plus d'informations
- Messages : 6
- Remerciements reçus 0
il y a 15 ans 6 mois #7697
par Thomas
Mot de passe par lot a été créé par Thomas
Bonjour à vous.
Je voudrais savoir si il y a la possibilité en powershell de réinitialiser le mot de passe de mes utilisateurs (tous le même mdp) dans une UO ?
je voudrais ainsi remettre 1234 pour tous mes users et qu'il puisse le changer a la 1ere ouverture de session.
J'utilise Windows 2003 (en Windows 2008 on peux directement en graphique mais pas en 2003)
Merci a tous
Je voudrais savoir si il y a la possibilité en powershell de réinitialiser le mot de passe de mes utilisateurs (tous le même mdp) dans une UO ?
je voudrais ainsi remettre 1234 pour tous mes users et qu'il puisse le changer a la 1ere ouverture de session.
J'utilise Windows 2003 (en Windows 2008 on peux directement en graphique mais pas en 2003)
Merci a tous
Connexion ou Créer un compte pour participer à la conversation.
- Alan Pinard
- Hors Ligne
- Membre senior
-
Réduire
Plus d'informations
- Messages : 77
- Remerciements reçus 0
il y a 15 ans 6 mois #7704
par Alan Pinard
Alan Pinard
Version A
Réponse de Alan Pinard sur le sujet Re:Mot de passe par lot
Bonjour ThomasCap,
Cela est possible. De mon côté, j'exporterais tous les noms de d'usager (Common Name) de l'OU dans un fichier CSV. J'ajouterais un champs \"password\" dans le CSV.
Ensuite, J'importerais le CSV avec la command Import-CSV et avec un ForEach je passerais à travers tous les comptes en appliquand la une fonction de modification.
[code:1]
Function Set-ADUsrPwd {
Param (
$User,
$OU = \"MyOU\"
)
#Transformation de la chaine DNS en chaine de connexion LDAP
$domaineLDAP = (\"DC=\" + $ENV:USERDNSDOMAIN.Replace(\".\",\",DC=\"«»)) #Recuperation du nom de domaine
$CN = $User.cn
$objUser = [ADSI]\"LDAP://CN=$CN,$OU=$OU,$domaineLDAP\" #connexion a l'AD
#Attention pour le CN=USERS, c'est un container par défaut, ne pas confondre container par défaut et OU. Si c'est une OU, on met OU=MONOU
#configure la \"strategie de mot de passe\" dans notre cas il active le compte et force le mot de passe inscrit dans le fichier csv. Mais ce pourrais être de forcer la configuration afin qu'il change le mot de passe au premier login
$Pwrd = $User.Password
$objUser.psbase.invoke(\"setPassword\",$Pwrd)
$objUser.psbase.invokeSet(\"AccountDisabled\",$False)
$objUser.psbase.invoke(\"pwdLastSet\",0)
$objUser.psbase.CommitChanges()
}
Import-Csv -Path C:\Test.csv | %{Set-ADUsrPwd -User $_ -OU CieUser}
[/code:1]
Ceci est un bout de code qui pourrait te permettre de démarre ton script.
Il y a surement d'autre façon, par exemple avec le module de Quest pour Active Directory.
Bonne journée,
Cela est possible. De mon côté, j'exporterais tous les noms de d'usager (Common Name) de l'OU dans un fichier CSV. J'ajouterais un champs \"password\" dans le CSV.
Ensuite, J'importerais le CSV avec la command Import-CSV et avec un ForEach je passerais à travers tous les comptes en appliquand la une fonction de modification.
[code:1]
Function Set-ADUsrPwd {
Param (
$User,
$OU = \"MyOU\"
)
#Transformation de la chaine DNS en chaine de connexion LDAP
$domaineLDAP = (\"DC=\" + $ENV:USERDNSDOMAIN.Replace(\".\",\",DC=\"«»)) #Recuperation du nom de domaine
$CN = $User.cn
$objUser = [ADSI]\"LDAP://CN=$CN,$OU=$OU,$domaineLDAP\" #connexion a l'AD
#Attention pour le CN=USERS, c'est un container par défaut, ne pas confondre container par défaut et OU. Si c'est une OU, on met OU=MONOU
#configure la \"strategie de mot de passe\" dans notre cas il active le compte et force le mot de passe inscrit dans le fichier csv. Mais ce pourrais être de forcer la configuration afin qu'il change le mot de passe au premier login
$Pwrd = $User.Password
$objUser.psbase.invoke(\"setPassword\",$Pwrd)
$objUser.psbase.invokeSet(\"AccountDisabled\",$False)
$objUser.psbase.invoke(\"pwdLastSet\",0)
$objUser.psbase.CommitChanges()
}
Import-Csv -Path C:\Test.csv | %{Set-ADUsrPwd -User $_ -OU CieUser}
[/code:1]
Ceci est un bout de code qui pourrait te permettre de démarre ton script.
Il y a surement d'autre façon, par exemple avec le module de Quest pour Active Directory.
Bonne journée,
Alan Pinard
Version A
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.032 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les débutants
- Mot de passe par lot