Cách tạo mật khẩu & người dùng không bao giờ hết hạn thông qua người dùng mạng thông qua tệp .bat


23

Tôi đang sử dụng .bat fileđể tạo người dùng và mật khẩu ở cấp hệ điều hành windows.

Vấn đề đang gặp phải là khi tôi chuyển EXPIRES:NEVERmật khẩu, khi người dùng được tạo, nó không có "Password never expires"hộp kiểm được chọn (có nghĩa là mật khẩu không bao giờ hết hạn được chọn cho người dùng đã tạo đó) và người dùng sẽ tự động hết hạn sau 90 ngày.

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

Trên đây là dòng mã chính, tôi chuyển tên người dùng và mật khẩu từ một tệp văn bản và chạy tệp .bat.

Câu trả lời:


34

Thêm dòng này vào tệp bó:

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

Lưu ý: Tôi tin rằng điều này sẽ chỉ hoạt động với tài khoản ĐỊA PHƯƠNG, không phải tài khoản DOMAIN. Nhưng có vẻ như đó là những gì bạn cần ...
Glenn Sullivan

1
Câu trả lời được chấp nhận sẽ cố gắng thay đổi cả người dùng cục bộ và người dùng tên miền, nếu cả hai đều tồn tại với tên người dùng đó. (Có thể nó sẽ không có quyền thay đổi người dùng tên miền và sẽ trả về "Lỗi chung" cho phần đó, nhưng ít nhất nó sẽ thử.) Nếu bạn chỉ muốn thay đổi người dùng cục bộ, không phải người dùng tên miền với cùng tên nếu nó tồn tại, sau đó sử dụng như sau: WMIC USERACCOUNT WHERE (Tên = '% 1' và Tên miền = '% computername%') SET PasswordExpires = FALSE
Ronny D'Hore

2

Tùy chọn / hết hạn là cho tài khoản, không phải cho mật khẩu, kiểm tra lệnh trợ giúp.

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

Từ tài liệu: "Làm cho tài khoản người dùng hết hạn nếu bạn chỉ định ngày."


Trong khi về mặt lý thuyết có thể trả lời câu hỏi, tốt hơn là nên bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo.
Scott Pack

1
Câu đầu tiên là QUAN TRỌNG. Nên trong câu trả lời được chấp nhận.
AD

1

Các net userlệnh có thể được sử dụng trên địa phương cũng như tài khoản miền. Sử dụng /domainchuyển đổi cho các tài khoản miền.

Ví dụ: để xem thông tin cho người dùng tên miền% 1, hãy sử dụng

net user %1 /domain

Danh sách đầy đủ các tùy chọn người dùng mạng được liệt kê ở đây:

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


1

Người dùng quảng cáo đơn

Đối với người dùng thư mục hoạt động, bạn có thể sử dụng lệnh dsmod để thay đổi nó cho một người dùng:

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

Nhiều người dùng quảng cáo

Nếu bạn muốn thiết lập hàng loạt thuộc tính này, bạn có thể thực hiện nó cho toàn bộ đơn vị tổ chức (OU) bằng cách sử dụng một cách trên kết hợp với DSquery .

Đầu tiên, để liệt kê tất cả người dùng trong OU (điều này an toàn để chạy, vì nó chỉ xuất ra một danh sách người dùng):

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

Sau đó, giả sử bạn hài lòng với đầu ra của lệnh trên, bạn có thể chuyển nó sang dsmod như vậy:

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

Một số thông tin khác, với ảnh chụp màn hình, tại đây: http://www.petenetlive.com/KB/Article/0000532.htm


0
net accounts /MaxPWAge:unlimited

Làm cho mật khẩu không bao giờ hết hạn; nhưng đối với tất cả các tài khoản trên máy - không tệ đối với máy gia đình hoặc VM


-1

Như đã nêu ở trên, net userdường như không cho phép otpion thay đổi mật khẩu hết hạn chỉ hết hạn tài khoản (thông qua / hết hạn).

Đây là những gì tôi đã sử dụng để xóa hết hạn mật khẩu cho tài khoản của mình:

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

Thay đổi 'tên người dùng' thành tên người dùng của tài khoản bạn muốn thay đổi.


4
Đây đã là câu trả lời được chấp nhận từ bốn năm trước.
Sven
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.