Olá pessoal,
Hoje quero abordar o tema do uso do PowerShell para redefinição de senhas no Office 365. Há algum tempo, me deparei com uma demanda para alterar mais de 200 senhas de e-mail no Office 365. Fiquei pensando: como posso fazer isso de maneira mais eficiente, sem gastar tanto tempo?
Foi então que tive a ideia de utilizar o PowerShell para facilitar essa tarefa. Vou compartilhar com vocês o método que me permitiu alterar essas senhas em menos de 15 minutos, algo que, de outra forma, teria levado horas.
1º passo instalar a integração do Powershell com office
Inserir o comando no Powershell(caso não tenha o modulo instalado): Install-module msonline
2º conectar ao painel de administração connect-msolservice (Vai solicitar as credenciais administrativas)
o script abaixo há algumas variáveis que podemos alterar, são elas:
Get-random -count: //GERA UMA SENHA ALEATÓRIA PARA O E-MAIL E O COUNT são quantos caracteres quer deixar definido a senha.
ForceChangePassword $false: //caso esteja false não vai solicitar para alterar no próximo login, se estiver true ai vai solicitar a troca da senha.
3º Rodar o seguinte script abaixo para redefinição da senha de 1 usuário
Gerar uma nova senha aleatória de 12 caracteres para um usuário específico
$newPassword = -join ((33..126) | Get-Random -Count 12 | ForEach-Object {[char]$_})
Set-MsolUserPassword -UserPrincipalName "teste@bnpsolucoes.com.br" -
NewPassword $newPassword -ForceChangePassword $false
Write-Host "Senha redefinida com sucesso:"
Write-Host "Nova senha: $newPassword"
O powershell irá informar a nova senha definida.
Para resetar a senha de vários e-mails:
Conecte ao Painel de administração
Em e-mailList deverá manter o formato e alterar e inserir os e-mails o quais devem ser redefinidos.
Insira o script abaixo:
$emailList = @(
"teste1@bnpsolucoes.com.br",
"teste2@bnpsolucoes.com.br", "teste3@bnpsolucoes.com.br",
)
foreach ($email in $emailList) {
$newPassword = -join ((33..126) | Get-Random -Count 12 | ForEach-Object {[char]$_})
Set-MsolUserPassword -UserPrincipalName $email -NewPassword $newPassword -
ForceChangePassword $false
Write-Host "Senha redefinida com sucesso para $email"
Write-Host "Nova senha: $newPassword"
Write-Host "--------------------------"
}
Seja o primeiro a comentar