Як створити пароль і користувача, що не закінчується, через мережевого користувача через .bat файл


23

Я використовую a .bat fileдля створення користувача та пароля на рівні операційної системи Windows.

Проблема, з якою я стикаюся, полягає в тому, що коли я передаю EXPIRES:NEVERпароль, коли користувач створений, він не має встановити "Password never expires"прапорець (тобто пароль ніколи не закінчується, для цього створеного користувача вибрано), і користувач автоматично закінчується через 90 днів.

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

Вище наведено основний рядок коду, я передаю ім’я користувача та пароль з текстового файлу та запускаю .bat файл.

Відповіді:


34

Додайте цей рядок до пакетного файлу:

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

NB: Я вважаю, що це буде працювати лише з локальними обліковими записами, а не з рахунками DOMAIN. Але, здається, це те, що вам потрібно ...
Гленн Салліван

1
Прийнята відповідь спробує змінити як локального користувача, так і користувача домену, якщо вони обидва існують з цим ім'ям користувача. (Можливо, у нього не буде прав на зміну користувача домену, і він поверне "Загальний збій" для цієї частини, але, принаймні, спробує.) Якщо ви хочете змінити лише місцевого користувача, а не користувача домену з те саме ім'я, якщо воно сталося б, тоді використовуйте наступне: WMIC USERACCOUNT WHERE (Name = '% 1' та Domain = '% ім'я комп’ютера%') SET PasswordExpires = FALSE
Ronny D'Hoore

2

Опція / термін дії - для облікового запису, а не для пароля, перевірте довідку команди.

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

З документації: "Причиняє термін дії облікового запису користувача, якщо Ви вказуєте дату."


Хоча це теоретично може відповісти на питання, бажано було б сюди включити істотні частини відповіді та надати посилання для довідки.
Скотт Пак

1
Перше речення ВАЖЛИВО. Повинно бути у прийнятій відповіді.
AD

1

net userКоманда може використовуватися на місцевому, а також облікові записи домену. Використовуйте /domainперемикач для облікових записів домену.

Наприклад, щоб побачити інформацію для користувача домену% 1, використовуйте

net user %1 /domain

Тут наведено повний перелік параметрів чистих користувачів:

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


1

Єдиний користувач AD

Для активних користувачів каталогів ви можете використовувати команду dsmod, щоб змінити її для одного користувача:

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

Кілька користувачів AD

Якщо ви хочете групово встановити це властивість, ви можете зробити це для цілого організаційного підрозділу (OU), використовуючи вищезазначене в поєднанні з dsquery .

По-перше, перерахувати всіх користувачів в ОУ (це безпечно для запуску, оскільки він видає лише список користувачів):

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

Тоді, припускаючи, що ви задоволені результатом вищевказаної команди, ви можете передати його в dsmod так:

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

Більше інформації, із скріншотами, тут: http://www.petenetlive.com/KB/Article/0000532.htm


0
net accounts /MaxPWAge:unlimited

Зробити пароль ніколи не закінчується; але для всіх облікових записів на машині - непогано для домашньої машини або VM


-1

Як зазначено вище, net userне дозволяють otpion змінювати термін дії терміну дії лише терміну дії рахунку (через / закінчується).

Це те, що я використовував для видалення терміну дії пароля для свого облікового запису:

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

Змініть "ім'я користувача" на ім’я користувача облікового запису, який ви хочете змінити.


4
Це вже прийнята відповідь від чотирьох років тому.
Свен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.