web-dev-qa-db-fra.com

Comment créer un mot de passe et un utilisateur qui n'expirent jamais via Net User via un fichier .bat

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.

23
Sharpeye500

Ajoutez cette ligne au fichier batch:

WMIC USERACCOUNT WHERE "Name='%1'" SET PasswordExpires=FALSE
34
Glenn Sullivan

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."

2
Qkolnek

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:

http://support.Microsoft.com/kb/251394

1
David Paige

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

1
Isak Savo
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

0
hB0