Como alterar as senhas em massa no portal Office 365

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

Faça um comentário

Seu e-mail não será divulgado.


*