Trocar Senha em Massa no Active Directory (Server 2008)
Em um domÃnio Active Directory você pode fazer isso com um simples comando no prompt do DOS.
Primeiro precisamos pesquisar o que queremos alterar,
Por exemplo:
dsquery user "OU=Usuarios,OU=BH,OU=Unidades,DC=Domain,DC=Local" -limit 10
O comando acima pesquisa todos os usuarios dentro hierarquia definida (Domain.local/Unidades/BH/Usuarios) e
limita o resulta aos 10 primeiros usuarios.
Para alterar a senha de todos os usuario pesquisados passe o resultado
da pesquisa para o comando que altera a senha:
dsquery user "OU=Usuarios,OU=BH,OU=Unidades,DC=Domain,DC=Local" -limit 10 |
dsmod user -pwd 1234 -mustchpwd yes
O comando acima realiza a mesma pequisa anterior e passa o resultado da
pesquisa (note o | ) para o comando dsmod que altera a senha para 1234 e força a
troca de senha (-mustchpwd yes)
Então para trocar a senha de todos é só colocar um limite bem alto para
que sejam pesquisados todos os objetos da hierarquia. (O padrão é 100 se não for especificado)
Você pode montar a pesquisa com a hierarquia que quiser assim pode
alterar a senha de uma OU especÃfica ou mesmo de um usuário especÃfico
Exemplos:
dsquery user
"CN=10069,OU="ADMINISTRACAO",OU=Usuario,OU=BH,OU=Unidades,DC=Domain,DC=Local" | dsmod user -pwd 1234 -mustchpwd yes
Altera a senha e força a troca de um usuário em especÃfico
dsquery user
"OU="ADMINISTRACAO",OU=Usuario,OU=BH,OU=Unidades,DC=ICEI,DC=Local" |
dsmod user -pwd 1234 -mustchpwd yes
Altera a senha de todos os usuário da administração
Lembrando que a pesquisa pega tudo dentro da hierarquia, então qualquer objeto dentro de ADMINISTRAÇÃO será retornado. No entanto quando fazemos dsquery user limitamos os tipos de objeto para usuários (poderia ser computer).
Para mais informações sobre o comando dsquery e dsmod digite: dsquery /? ou dsmod /?
Retirado e adaptado para melhor esclarecimento de:
http://social.technet.microsoft.com/Forums/pt-BR/winsrv2008pt/thread/ed5c7af4-32ca-4283-8e7b-cdaf87aa1693
In a Active Directory Domain you can do it with a simple DOS command
First we need to know what we want alter:
dsquery user "OU=Users,OU=BH,OU=Unidades,DC=Domain,DC=Local" -limit 10
The top command search all users in the defined hierarquy (Domain.local/Unidades/BH/Users) and limit results by 10 first.
For alter all users search follow the command with a pipe line and the command for alter passwords:
dsquery user "OU=Users,OU=BH,OU=Unidades,DC=Domain,DC=Local" -limit 10 |
dsmod user -pwd 1234 -mustchpwd yes
The top command do the same previous search and passes the result (note the | ) for the dsmod command.
The dsmod command alter the password and force change in next login (-mustchpwd yes)
So, for change all passwords is just put a hight limit in the search. (default to 100 if no limits specified)
You can mount any search then you can alter one specific OU or one user.Exemples:
dsquery user
"CN=10069,OU="SALES",OU=Users,OU=BH,OU=Unidades,DC=Domain,DC=Local" | dsmod user -pwd 1234 -mustchpwd yes
Alter one specific user.
dsquery user
"OU="SALES",OU=Users,OU=BH,OU=Unidades,DC=ICEI,DC=Local" -limit 100000 |
dsmod user -pwd 1234 -mustchpwd yes
Alter All users on SALES department since number of users is less than 100000
Remember that the query catch all in hierarchy, so any object inside SALES will catch on the search. However
the parameter user in dsquery and dsmod limit the type of object to users (can be computers by example)
For more information about the commands type:
Para mais informações sobre o comando dsquery e dsmod digite: dsquery /? or dsmod /? Removed and adjusted for further clarification: http://social.technet.microsoft.com/Forums/pt-BR/winsrv2008pt/thread/ed5c7af4-32ca-4283-8e7b-cdaf87aa1693