1
每當我通過System.DirectoryServices API創建一個新用戶時,我最終將其ChangePasswordAtLogon設置爲on的用戶帳戶(在屬性對話框中選中)。我嘗試了一些搜索和屬性,似乎無法找到一種方法來關閉它。如何通過C#DirectoryServices API在新創建的AD用戶上禁用ChangePasswordAtLogon標誌?
每當我通過System.DirectoryServices API創建一個新用戶時,我最終將其ChangePasswordAtLogon設置爲on的用戶帳戶(在屬性對話框中選中)。我嘗試了一些搜索和屬性,似乎無法找到一種方法來關閉它。如何通過C#DirectoryServices API在新創建的AD用戶上禁用ChangePasswordAtLogon標誌?
它作爲位域標誌UF_PASSWORD_EXPIRED
存儲在屬性ms-DS-User-Account-Control-Computed下,但屬性是隻讀的,不能直接設置或取消設置該標誌。
你需要做的是設置pwdLastSet to 0 or -1的值來設置或清除標誌。
下面的例子,更多信息可在this MSDN頁面找到的「管理用戶密碼」與System.DirectoryServices
usr.Properties["pwdLastSet"].Value = -1; // To turn on, set this value to 0.
usr.CommitChanges();
這是不行的,我試過這個,什麼都不會發生。 – brushleaf
您是否嘗試過提交更改以創建用戶,然後執行上述兩行操作?我有類似的問題,直到用戶被提交到目錄後,與密碼相關的內容才能正常工作。 –
@brushleaf從我記得,你必須創建用戶和提交,然後設置屬性並再次提交。 –