J'utilise un .bat file
pour créer un utilisateur et un mot de passe au niveau du système d'exploitation Windows.
Le problème auquel je suis confronté est quand je passe EXPIRES:NEVER
pour le mot de passe, lorsque l'utilisateur est créé, il n'a pas "Password never expires"
case cochée (ce qui signifie que le mot de passe n'expire jamais est sélectionné pour cet utilisateur créé) et l'utilisateur expire automatiquement après 90 jours.
Net User %1 %2 /COMMENT:"%3" /EXPIRES:NEVER /PASSWORDCHG:NO /ADD
Ce qui précède est la ligne principale de code, je passe le nom d'utilisateur et le mot de passe à partir d'un fichier texte et exécute le fichier .bat.
Ajoutez cette ligne au fichier batch:
WMIC USERACCOUNT WHERE "Name='%1'" SET PasswordExpires=FALSE
L'option/expires concerne le compte, pas le mot de passe, consultez l'aide de la commande.
http://support.Microsoft.com/kb/251394/en-us
Dans la documentation: "Provoque l'expiration du compte d'utilisateur si vous spécifiez la date."
La commande Net User
Peut être utilisée sur les comptes locaux et de domaine. Utilisez le commutateur /domain
Pour les comptes de domaine.
Par exemple, pour voir les informations de l'utilisateur de domaine% 1, utilisez
Net User %1 /domain
La liste complète des options Net User est répertoriée ici:
Utilisateur AD unique
Pour les utilisateurs Active Directory, vous pouvez utiliser la commande dsmod pour la modifier pour un seul utilisateur:
dsmod user "CN=username,OU={User Org Unit},DC... etc" -pwdneverexpires yes
Plusieurs utilisateurs AD
Si vous souhaitez définir en bloc cette propriété, vous pouvez le faire pour une unité organisationnelle (OU) entière en utilisant le ci-dessus en combinaison avec dsquery .
Tout d'abord, pour répertorier tous les utilisateurs dans une unité d'organisation (cela est sûr à exécuter, car il ne génère qu'une liste d'utilisateurs):
dsquery user "OU={your target OU},DC={your domain},DC={your domain extension}"
Ensuite, en supposant que vous êtes satisfait de la sortie de la commande ci-dessus, vous pouvez la diriger vers dsmod comme ceci:
dsquery user "OU={your target OU},DC={your domain},DC={your domain extension}" | dsmod user -pwdneverexpires yes
Quelques informations supplémentaires, avec des captures d'écran, ici: http://www.petenetlive.com/KB/Article/0000532.htm
net accounts /MaxPWAge:unlimited
Rend le mot de passe à jamais expirer; mais pour tous les comptes sur la machine - pas mal pour une machine domestique ou une machine virtuelle