Instalar o módulo do PowerShell do Exchange Online (passo a passo)
By Mirko Peters ·
Instale o módulo do PowerShell do Exchange Online com Install-Module ExchangeOnlineManagement: requisitos, escopo, verificação de versão, atualizações e correção de erros.
Automatically translated with AI from the original post. Read the English original
Para instalar o módulo do PowerShell do Exchange Online, abra o PowerShell como administrador e execute Install-Module -Name ExchangeOnlineManagement. Isso instala o módulo para todos os usuários do computador. Se você não puder executar como administrador, adicione -Scope CurrentUser e ele será instalado apenas para a sua conta. Este artigo é para administradores do Exchange e do Microsoft 365 que configuram um novo computador de administração, um servidor de salto ou um agente de build. Ele aborda os requisitos, as etapas de instalação e verificação, a atualização e a remoção do módulo, e os erros mais comuns.
Pontos-chave
- Instale o módulo do PowerShell do Exchange Online com Install-Module -Name ExchangeOnlineManagement, em uma janela do PowerShell executada como administrador para todos os usuários.
- Use -Scope CurrentUser se você não puder usar direitos de administrador. Atualize o módulo depois com o mesmo escopo usado na instalação.
- O Windows PowerShell 5.1 precisa do .NET Framework 4.7.2. O suporte ao PowerShell 7 depende da versão do módulo, e a versão 3.10.0 ou posterior exige o PowerShell 7.6.0.
- Verifique o resultado com Get-InstalledModule, que mostra a versão e se o módulo está no local de todos os usuários ou do usuário atual.
- O módulo não precisa mais da autenticação Básica no WinRM, porque suas conexões usam REST.
O que é o módulo e o que você precisa antes
O módulo se chama ExchangeOnlineManagement. A documentação da Microsoft o chama de módulo Exchange Online PowerShell V3. Ele conecta você ao Exchange Online PowerShell, ao Security & Compliance PowerShell e ao PowerShell do complemento de segurança integrado para caixas de correio locais. Ele usa autenticação moderna, então funciona com ou sem autenticação multifator.
Uma mudança afeta scripts mais antigos. A Microsoft informa que, desde outubro de 2023, as conexões de API REST substituíram as antigas conexões do PowerShell remoto com autenticação Básica. As conexões do módulo não precisam de autenticação Básica no WinRM, então não há nada para ativar ali.
Antes de instalar, verifique estes pré-requisitos:
- Versão do PowerShell e do .NET. O Windows PowerShell 5.1 precisa do .NET Framework 4.7.2. O Windows 11, o Windows Server 2022 e o Windows Server 2025 vêm com a versão 4.8.x, então está tudo certo nesses sistemas. O PowerShell 7 também funciona, e a versão mínima depende da versão do módulo, que a próxima seção explica.
- Política de execução. A página da Microsoft diz que, sem uma política de execução adequada, você recebe o erro "Não é possível carregar os arquivos porque a execução de scripts está desabilitada neste sistema". A correção documentada é
Set-ExecutionPolicy RemoteSigned, executada como administrador. Leia a página da Microsoft sobre políticas de execução antes de alterá-la e, se a máquina for gerenciada, consulte primeiro a sua equipe de segurança. - PowerShellGet e PackageManagement. As conexões REST no Windows exigem o PowerShellGet, e o PowerShellGet depende do PackageManagement. Sem eles, você pode ver um erro sobre o cmdlet
Update-ModuleManifestausente. A Microsoft também informa que versões de prévia desses dois módulos podem causar problemas de conexão e indica um comando para listar as versões instaladas:Get-InstalledModule PackageManagement -AllVersions; Get-InstalledModule PowerShellGet -AllVersions. - TLS 1.2. No Windows PowerShell 5.1 em um Windows mais antigo, a PowerShell Gallery exige TLS 1.2 ou posterior. Se o download falhar com um erro de conexão em um servidor antigo, esse é o primeiro ponto a verificar.
Um sistema muito antigo não tem saída. O Windows 7 SP1 e o Windows Server 2008 R2 SP1 recebem apenas a versão 2.0.3 do módulo, e a Microsoft informa que essa versão não consegue se conectar porque não tem suporte a REST.
Qual versão do PowerShell corresponde a qual versão do módulo
O Windows PowerShell 5.1 funciona com todas as versões do módulo, observando o requisito de .NET mencionado acima. Para o PowerShell 7, a Microsoft lista este mapeamento:
- O módulo 3.10.0 ou posterior exige o PowerShell 7.6.0 ou posterior, que usa o .NET 10.
- Os módulos 3.5.0 a 3.9.2 exigem o PowerShell 7.4.0 ou posterior, que usa o .NET 8.
- Os módulos 3.0.0 a 3.4.0 exigem o PowerShell 7.2.0 ou posterior, que usa o .NET 6.
- O módulo 2.0.4 e as versões posteriores da linha 2.x exigem o PowerShell 7.0.3.
Portanto, se você instalou a versão mais recente do módulo em um computador com o PowerShell 7.4, espere problemas. Atualize o PowerShell ou instale uma versão anterior do módulo com -RequiredVersion. No momento da redação deste texto, a Microsoft lista a 3.10.1 como versão atual. Confira a página do módulo para saber o número que vale quando você estiver lendo.
A Microsoft também oferece suporte ao módulo no Linux e no macOS. No Linux, conectar por meio de proxy exige a versão 3.0.0 ou posterior do módulo. Em ambos os sistemas, Connect-IPPSSession, e com ele o Security & Compliance PowerShell, não está disponível no PowerShell 7. Se você gerencia o Exchange Online a partir de um Mac, essa é a única limitação que você precisa conhecer antes de planejar suas ferramentas.
O Windows 10 merece uma breve observação. As edições para consumidores chegaram ao fim do suporte em outubro de 2025, e a Microsoft informa que elas não oferecem suporte ao .NET 8.0 nem ao .NET 10.0. Para o módulo 3.5.0 e posteriores com o PowerShell 7.4 ou posterior, funcionam apenas as edições Enterprise e IoT LTSC que ainda estão em suporte.
Verifique sua versão do PowerShell antes de instalar
Uma verificação de dois minutos evita muitas suposições depois. Na janela em que você pretende trabalhar, execute $PSVersionTable.PSVersion para ver qual versão do PowerShell você está usando. Compare o resultado com o mapeamento acima. No Windows PowerShell 5.1, também convém saber a versão do PowerShellGet, então execute Get-InstalledModule PowerShellGet -AllVersions. Se esse comando listar uma versão de prévia, remova-a ou atualize para uma versão estável antes de continuar. A página do módulo da Microsoft aponta as versões de prévia do PowerShellGet e do PackageManagement como uma fonte de problemas de conexão.
Anote o resultado ao lado do nome da máquina se você gerencia mais do que alguns servidores. Quando um colega relatar uma falha de conexão três meses depois, você poderá comparar as versões em segundos.
Como instalar o módulo do PowerShell do Exchange Online passo a passo
Estas etapas funcionam no Windows PowerShell 5.1 e no PowerShell 7.
- Abra o PowerShell. Escolha Executar como administrador se quiser instalar para todos os usuários. Pule essa etapa se pretende instalar apenas para o usuário atual.
- Se este for o primeiro módulo que você instala na máquina, atualize primeiro o PowerShellGet e depois feche e reabra o PowerShell. A Microsoft recomenda essa ordem antes da primeira instalação.
- Execute
Install-Module -Name ExchangeOnlineManagementpara todos os usuários. Para apenas a sua conta, executeInstall-Module -Name ExchangeOnlineManagement -Scope CurrentUser. - Responda a qualquer solicitação que o PowerShell mostrar durante a instalação. Sua organização precisa permitir o acesso à PowerShell Gallery para que o download funcione.
- Verifique a instalação com
Get-InstalledModule ExchangeOnlineManagement | Format-List Name,Version,InstalledLocation. - Leia a linha
InstalledLocation. Um caminho em%ProgramFiles%\WindowsPowerShell\Modules\indica que o módulo está instalado para todos os usuários. Um caminho na sua pasta Documentos indica que ele está instalado apenas para o usuário atual. - Teste em uma nova janela com
Connect-ExchangeOnline -UserPrincipalName admin@contoso.com. Para os detalhes da conexão, consulte o artigo Connect to Exchange Online PowerShell.
Quer uma versão de pré-lançamento? Adicione -AllowPrerelease. Para escolher uma versão de pré-lançamento específica, combine-o com -RequiredVersion. Find-Module ExchangeOnlineManagement -AllVersions -AllowPrerelease lista o que está disponível, e omitir -AllowPrerelease lista apenas as versões públicas. Não instale uma versão de pré-lançamento em um servidor de administração de produção sem um motivo válido. Teste primeiro em uma máquina de reserva.
Atualizar e desinstalar o módulo
A Microsoft publica novas versões do módulo regularmente, e as notas de versão na página do módulo mostram o que mudou. A versão 3.7.0, por exemplo, deixou de carregar a ajuda de linha de comando por padrão, e a versão 3.9.2 descontinuou o parâmetro UseRpsSession. Atualizar é um comando de uma linha: Update-Module -Name ExchangeOnlineManagement. Para uma instalação do usuário atual, adicione -Scope CurrentUser. A Microsoft recomenda usar o mesmo escopo que você usou na instalação. Uma divergência pode deixar você com uma instalação nos dois locais e sem clareza sobre qual o PowerShell utiliza.
É por isso que vale a pena executar a verificação Get-InstalledModule da etapa 5 antes e depois de uma atualização. Se você vir duas versões, descubra a qual escopo cada uma pertence.
Para remover o módulo, execute Uninstall-Module -Name ExchangeOnlineManagement. Se ele foi instalado para todos os usuários, faça isso como administrador. Depois, feche as janelas do PowerShell que estiverem abertas, porque um módulo já carregado permanece na memória até o fim da sessão.
Corrigir erros comuns de instalação
A página do módulo na Microsoft lista alguns erros específicos e suas correções.
- "No match was found for the specified search criteria and module name 'ExchangeOnlineManagement'". Execute
Register-PSRepository -Default, que registra novamente a PowerShell Gallery como repositório. Em seguida, tente a instalação outra vez. - Erros sobre PowerShellGetFormatVersion ou sobre a impossibilidade de baixar provedores. Atualize o PowerShellGet e reinicie o PowerShell.
- O download falha em uma máquina com o Windows PowerShell 5.1 mais antigo. A PowerShell Gallery exige TLS 1.2 ou superior. A Microsoft inclui um link para uma postagem de blog sobre o suporte a TLS da galeria, com os detalhes.
- "Files cannot be loaded because running scripts is disabled on this system". Defina a política de execução conforme descrito acima, como administrador.
- "Cannot find a cmdlet Update-Manifest" ou uma mensagem semelhante sobre
Update-ModuleManifestao conectar. O PowerShellGet ou o PackageManagement está ausente. Instale os dois e reinicie o PowerShell.
Se a instalação funciona, mas a conexão falha depois com um erro estranho de assembly, a causa geralmente é outro módulo na mesma sessão. Abra uma nova janela e conecte-se primeiro.
Erros comuns
- Misturar escopos. Instalar para todos os usuários em uma ocasião e atualizar com
-Scope CurrentUserdepois deixa duas versões na máquina. Escolha um escopo e mantenha-o. - Executar uma versão do PowerShell incompatível com o módulo. A versão mais recente do módulo com um PowerShell 7 mais antigo falha de maneiras que parecem erros de conexão. Compare suas versões com a tabela acima.
- Instalar uma versão de pré-lançamento em um host de produção. Versões de pré-lançamento são para testes. Use a versão pública no trabalho diário.
- Ignorar o PowerShellGet. Um PowerShellGet ausente ou de pré-lançamento pode quebrar conexões REST, como descreve a página da Microsoft. Verifique-o primeiro quando uma instalação recém-feita não conectar.
- Seguir tutoriais antigos. Guias que mandam habilitar a autenticação Basic no WinRM descrevem o método de PowerShell remoto que foi desativado. Você não precisa dele.
Tópicos relacionados para explorar
- Conectar com o módulo: depois de instalado, a próxima pergunta é como entrar, com ou sem MFA, que é o que o artigo sobre o módulo do Exchange Online PowerShell e seu artigo complementar sobre conexão explicam.
- Autenticação somente de aplicativo: scripts agendados precisam de um certificado ou de uma identidade gerenciada, não de uma senha digitada.
- Como usar o módulo no PowerShell 7 em Linux e macOS: as versões compatíveis variam de acordo com o sistema operacional, então verifique primeiro a lista de compatibilidade.
- Como controlar quem pode usar o PowerShell: um administrador do Exchange pode habilitar ou desabilitar o acesso ao PowerShell do Exchange Online por usuário.
- Como manter os módulos atualizados: defina um lembrete periódico para verificar novas versões do módulo, porque a Microsoft aumenta de tempos em tempos a versão mínima do PowerShell.
Próximo passo
Para instalar o módulo do PowerShell do Exchange Online, execute Install-Module -Name ExchangeOnlineManagement, verifique a instalação com Get-InstalledModule e mantenha o mesmo escopo em todas as atualizações posteriores. Em seguida, conecte-se com Connect-ExchangeOnline em uma nova janela e execute Get-AcceptedDomain para confirmar que a configuração funciona.