Guia passo a passo para alterar a política de execução para execução de script do PowerShell

Guia passo a passo para alterar a política de execução para execução de script do PowerShell
  • Para modificar a política de execução do PowerShell, inicie o PowerShell (admin) e execute o comando “Set-ExecutionPolicy RemoteSigned” para habilitar a execução do script. Como alternativa, o comando “Set-ExecutionPolicy AllSigned” permite apenas scripts de publicadores verificados. O comando “Set-ExecutionPolicy Unrestricted” , por outro lado, permite que todos os scripts sejam executados livremente.
  • Se desejar reverter para as configurações padrão, use o comando “Set-ExecutionPolicy Restricted” para proibir completamente a execução do script.
  • Você também pode ajustar as permissões do script do PowerShell por meio do aplicativo Configurações do Windows 10 ou 11.

Por padrão, no Windows 10 ou 11, tentar executar um script no PowerShell pode resultar em uma mensagem de erro informando “não pode ser carregado porque a execução de scripts está desabilitada neste sistema” . Esse erro ocorre devido a uma política de execução que está em vigor para segurança, controlando como scripts e arquivos de configuração são executados para evitar atividades maliciosas em seu sistema.

Para executar um script nesses sistemas operacionais, você tem a opção de alterar a política de execução para a máquina local, o usuário atual ou a própria sessão.

Ao definir uma política de execução para o usuário atual ou para a máquina local, essas informações são armazenadas no Registro do Windows. No entanto, se você definir a política para apenas uma sessão, essa alteração persistirá somente até você fechar o PowerShell.

Conforme declarado pela Microsoft , essas políticas de execução não impõem restrições às atividades. Você pode contorná-las temporariamente inserindo o script diretamente na linha de comando. A intenção por trás dessas políticas é auxiliar os usuários a evitar a execução de scripts prejudiciais.

Este guia fornecerá instruções detalhadas sobre como modificar sua política de execução para permitir a execução bem-sucedida de scripts no PowerShell no Windows 10 ou 11.

Modificar política de execução no Windows 11 via PowerShell

Para alterar a política de execução do PowerShell no Windows 10 ou 11, siga estas etapas:

  1. Clique em Iniciar no seu dispositivo Windows 11.

  2. Pesquise por PowerShell , clique com o botão direito do mouse no resultado superior e selecione Executar como administrador .

  3. Insira o seguinte comando para verificar a política de execução atual e pressione Enter :

    Get-ExecutionPolicy

  4. (Opcional) Para listar as políticas de execução efetivas do PowerShell, digite o seguinte comando e pressione Enter :

    Get-ExecutionPolicy -List

  5. Para permitir que scripts sejam executados em sua máquina Windows 11, digite o seguinte comando e pressione Enter :

    Set-ExecutionPolicy RemoteSigned

  6. (Opcional) Para impedir que qualquer script seja executado, você pode digitar este comando e pressionar Enter :

    Set-ExecutionPolicy Restricted
    Política de execução de alterações do PowerShell

Após concluir as etapas, você poderá executar seu script com sucesso no Windows 11. Se em algum momento você quiser reverter as permissões de execução do script, poderá executar o comando opcional descrito acima.

Caso precise definir a política de execução para permitir a execução do script apenas para o usuário atual ou para o dispositivo local, você pode usar a opção “Scope” com seu comando, assim: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUserou Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope LocalMachine.

No Windows 11, você tem quatro políticas de execução para controlar quais scripts podem ser executados:

  • Restrito — impede que todos os scripts sejam executados.
  • RemoteSigned — permite scripts criados localmente, mas exige que scripts de outras máquinas sejam assinados por um editor confiável.
  • AllSigned — permite todos os scripts, desde que sejam assinados por uma fonte confiável.
  • Irrestrito — permite que qualquer script seja executado sem limitações.

Se seu script não exigir os parâmetros específicos e não fornecer nenhuma saída, alterar a política de execução pode não ser necessário. Em vez disso, você pode utilizar o comando PowerShell.exe -File "FILENAME"-ExecutionPolicy Bypasspara ignorar restrições.

Modificar a política de execução no Windows 11 por meio de Configurações

No Windows 10 e 11, você também pode alterar as permissões do script do PowerShell por meio do aplicativo Configurações.

Para Windows 11

Para atualizar a política de execução usando o aplicativo Configurações, siga estas etapas:

  1. Abra Configurações .

  2. Selecione Sistema .

  3. Vá para a seção Para desenvolvedores .

  4. Clique na opção PowerShell .

  5. Ative a alternância para “Alterar política de execução para permitir scripts locais do PowerShell […]” .

    As configurações do Windows 11 alteram a execução do PowerShell

Se você decidir que não quer mais essa opção habilitada, basta seguir os mesmos passos e, na etapa 5 , desativar o botão de alternância.

Para Windows 10

Para atualizar a política de execução do PowerShell por meio do aplicativo Configurações, siga estas etapas:

  1. Abra Configurações .

  2. Selecione Atualização e segurança .

  3. Navegue até a seção Para desenvolvedores .

  4. Habilite a opção “Alterar política de execução para permitir scripts locais do PowerShell […]” nas configurações do PowerShell.

    As configurações do Windows 10 alteram a execução do PowerShell

  5. Clique no botão Aplicar para salvar as alterações.

Se desejar desabilitar esse recurso, repita os mesmos passos, mas no passo 4 , desative a opção e aplique suas alterações.

Após concluir as etapas, a política de execução do PowerShell será definida como “RemoteSigned”, permitindo que você execute scripts locais sem exigir uma assinatura, ao mesmo tempo em que insiste na verificação de scripts remotos.

Modificar política de execução para executar scripts não assinados

Se você encontrar um script do PowerShell originado de outro computador ou baixado online, tentar executá-lo pode gerar um erro informando “O arquivo […].ps1 não pode ser carregado. O arquivo […].ps1 não está assinado digitalmente. Você não pode executar este script no sistema atual” ou “O script não será executado no sistema” . No entanto, se você tiver certeza de sua segurança e a fonte for confiável, você pode ajustar a política de escopo “Processo” para autorizar sua execução.

Erro de script do PowerShell não assinado digitalmente
Erro de script do PowerShell não assinado digitalmente / Imagem: Mauro Huculak

Para alterar a política de execução do PowerShell para permitir que um script “.ps1” não assinado digitalmente seja executado, siga estas etapas:

  1. Abra Iniciar .

  2. Pesquise por PowerShell , clique com o botão direito do mouse no resultado superior e escolha Executar como administrador .

  3. Para alterar a política e permitir scripts do PowerShell não assinados, digite o seguinte comando e pressione Enter :

    Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass
    PowerShell permite script não assinado digitalmente

Após executar essas etapas, execute o arquivo de script com o comando .\Your-PowerShell-Script.ps1durante sua sessão atual. Observe que, depois que você fechar a sessão do PowerShell, a política de execução será redefinida para seu estado anterior, impedindo que outros scripts sejam executados sem mais ajustes.

Se precisar executar outro script, você pode repetir os passos descritos.

Atualização em 10 de outubro de 2024: Este guia foi revisado para garantir precisão e refletir adaptações recentes no processo.

Fonte

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *