Frage Wie man ein nie ablaufendes Passwort & Benutzer über den Net-Benutzer durch .bat-Datei erstellt


Ich benutze ein .bat file um einen Benutzer und ein Passwort auf Windows-Betriebssystemebene zu erstellen.

Das Problem ist, wenn ich vorbeigehe EXPIRES:NEVER für das Passwort, wenn der Benutzer erstellt wird, hat es nicht "Password never expires" checkbox checked (das bedeutet, dass das Passwort für den erstellten Benutzer nie abläuft) und der Benutzer läuft automatisch nach 90 Tagen ab.

Net User %1 %2 /COMMENT:"%3" /EXPIRES:NEVER /PASSWORDCHG:NO /ADD

Das obige ist die Hauptlinie des Codes, ich übergebe Benutzername und Passwort aus einer Textdatei und führe die .bat-Datei aus.


21
2017-10-04 07:03


Ursprung




Antworten:


Fügen Sie diese Zeile zur Batch-Datei hinzu:

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

33
2017-10-04 13:56



NB: Ich glaube, das funktioniert nur mit LOKALEN Konten, nicht mit DOMAIN Konten. Aber es scheint, dass du das brauchst ... - Glenn Sullivan
Die akzeptierte Antwort versucht, sowohl den lokalen Benutzer als auch den Domänenbenutzer zu ändern, wenn beide mit diesem Benutzernamen existieren. (Vielleicht hat es nicht die Rechte, den Domänenbenutzer zu ändern, und wird "Generic failure" für diesen Teil zurückgeben, aber zumindest wird es versuchen.) Wenn Sie nur den lokalen Benutzer ändern möchten, kein Domänenbenutzer mit dem Derselbe Name, wenn es zufällig existiert, dann benutze folgendes: WMIC USERACCOUNT WHERE (Name = '% 1' und Domain = '% Computername%') SET PasswordExpires = FALSE - Ronny D'Hoore


Die Option / expires ist für Konto, nicht für Passwort, überprüfen Sie die Befehlshilfe.

http://support.microsoft.com/kb/251394/en-us

Aus der Dokumentation: "Bewirkt, dass das Benutzerkonto abläuft, wenn Sie das Datum angeben."


2
2017-10-04 13:41



Während dies theoretisch die Frage beantworten könnte, es wäre vorzuziehen um die wesentlichen Teile der Antwort hier einzubeziehen und den Link als Referenz bereitzustellen. - Scott Pack
Der erste Satz ist WICHTIG. Sollte in akzeptierter Antwort sein. - A.D.


Das net user Der Befehl kann sowohl auf lokalen als auch auf Domänenkonten verwendet werden. Benutze die /domain Wechseln Sie für Domänenkonten.

Um beispielsweise die Informationen für den Domänenbenutzer% 1 anzuzeigen, verwenden Sie

net user %1 /domain

Die vollständige Liste der Benutzeroptionen finden Sie hier:

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


1
2017-11-03 14:38





Einzelner AD-Nutzer

Für Active Directory-Benutzer können Sie die dsmod Befehl, um es für einen einzelnen Benutzer zu ändern:

dsmod user "CN=username,OU={User Org Unit},DC... etc" -pwdneverexpires yes

Mehrere AD-Benutzer

Wenn Sie diese Eigenschaft in einer Sammelgruppe festlegen möchten, können Sie dies für eine gesamte Organisationseinheit (OU) tun, indem Sie die obige Kombination verwenden Dsquery.

Erstens, um alle Benutzer in einer Organisationseinheit aufzulisten (dies ist sicher auszuführen, da nur eine Liste von Benutzern ausgegeben wird):

dsquery user "OU={your target OU},DC={your domain},DC={your domain extension}"

Wenn Sie dann davon ausgehen, dass Sie mit der Ausgabe des obigen Befehls zufrieden sind, können Sie ihn wie folgt an dsmod übergeben:

dsquery user "OU={your target OU},DC={your domain},DC={your domain extension}" | dsmod user -pwdneverexpires yes

Einige weitere Infos, mit Screenshots, hier: http://www.petenetlive.com/KB/Artikel/0000532.htm


1
2017-11-13 09:31





net accounts /MaxPWAge:unlimited

Lässt das Passwort niemals ablaufen; aber für alle Konten auf der Maschine - nicht schlecht für eine Heimmaschine oder VM


0
2017-08-13 21:01





Wie oben erwähnt, net user scheint nicht zu ermöglichen, dass die otpion den Ablauf des Passwortablaufs nur durch Ablauf des Accounts ändert (durch / abläuft).

Dies ist, was ich verwendet habe, um den Passwort Ablauf für mein Konto zu entfernen:

wmic UserAccount where Name='username' set PasswordExpires=False

Ändern Sie "Benutzername" in den Benutzernamen des Kontos, das Sie ändern möchten.


-1
2018-06-30 07:03



Dies ist bereits die akzeptierte Antwort von vor vier Jahren. - Sven♦