Alterando outra senha de usuário da linha de comando

2

Estou em um domínio do AD e quero alterar a senha de alguém (que está vencida, mas acho que é irrelevante).

Eu não sou um administrador do AD, então net user <username> * /domain não funciona.

Posso alterá-lo pressionando CTRL + ALT + DELETE- > Alterar senha, digitando a senha antiga que possuo; existe uma linha de comando equivalente a esse processo?

    
por Stefano d'Antonio 26.05.2016 / 16:40

2 respostas

4

Na verdade, se você não for um administrador de domínio (ou administrador da conta), é relevante: para uma conta com senha expirada, você deve fazer um logon interativo para alterar a senha.

Caso contrário, se você souber a senha do outro usuário, poderá iniciar uma sessão do Powershell com essas credenciais e usar o código que @Ryan Bolger acabou de postar. Ou ainda mais fácil:

Set-ADAccountPassword otheruser -oldpassword typeoldpassword -newpassword typenewpassword

**** EDIT ****

Esqueça tudo acima: você pode fazê-lo com esse comando, pois esse comando realmente faz um logon interativo. Então faça:

Set-ADAccountPassword otheruser

e você será solicitado a digitar a senha antiga, depois a nova senha e redigitar a nova senha. Eu apenas testei! :)

    
por 26.05.2016 / 17:45
0

Se você souber o valor do nome distinto (DN) do LDAP para o usuário, poderá fazê-lo com o PowerShell assim:

$oldpass = 'XXXXXXX'
$newpass = 'XXXXXXX'
$user = [ADSI]"LDAP://CN=myuser,OU=MyOU,DC=example,DC=com"
$user.ChangePassword($oldpass,$newpass)

Devo observar que esse método funciona mesmo se a senha já tiver expirado, o que é um bônus interessante.

Se você não conhece o DN, é apenas um pouco mais difícil, porque você precisa procurar uma referência para o usuário primeiro. Aqui está um forro que usa adsisearcher para encontrar o usuário por sAMAccountName . Embora você possa usar qualquer filtro LDAP que faça sentido. Você pode usar isso no lugar da linha $user = blah acima.

$user = ([adsisearcher]"(&(sAMAccountType=805306368)(sAMAccountName=myuser))").FindOne()
    
por 26.05.2016 / 17:08