直接在计算机上更改活动目录用户密码而无需活动目录
Change active directory User's password without active directory directly on the computer
我有一个脚本,使用时可以让某人更改用户的密码。它使用以下命令来执行此操作。
dsquery user -samid $username | dsmod user -pwd Password -mustchpwd yes
唯一的问题是您必须拥有 Active Directory 才能使用此命令。要访问脚本,我使用我的网络 U: 驱动器并调用该共享驱动器的快捷方式。但是,当我切换到网络上没有活动目录的计算机时,我无法使用该脚本。我想知道的是如何将 Active Directory 安装到共享驱动器上并让脚本通过该共享驱动器访问 Active Directory,以便我可以在任何计算机上使用脚本,无论它们是否具有 Active Directory?
这段代码对我使用 ADSI 有效
$pwd = "Password"
$user = (([adsisearcher]"(&(objectCategory=User)(samaccountname=$username))").findall()).properties.distinguishedname
$oUser = [adsi]“LDAP://$user”
$ouser.psbase.invoke(“SetPassword”,$pwd)
$ouser.psbase.CommitChanges()
我有一个脚本,使用时可以让某人更改用户的密码。它使用以下命令来执行此操作。
dsquery user -samid $username | dsmod user -pwd Password -mustchpwd yes
唯一的问题是您必须拥有 Active Directory 才能使用此命令。要访问脚本,我使用我的网络 U: 驱动器并调用该共享驱动器的快捷方式。但是,当我切换到网络上没有活动目录的计算机时,我无法使用该脚本。我想知道的是如何将 Active Directory 安装到共享驱动器上并让脚本通过该共享驱动器访问 Active Directory,以便我可以在任何计算机上使用脚本,无论它们是否具有 Active Directory?
这段代码对我使用 ADSI 有效
$pwd = "Password"
$user = (([adsisearcher]"(&(objectCategory=User)(samaccountname=$username))").findall()).properties.distinguishedname
$oUser = [adsi]“LDAP://$user”
$ouser.psbase.invoke(“SetPassword”,$pwd)
$ouser.psbase.CommitChanges()