O script PowerShell não é assinado digitalmente

Quando você tenta executar um script PowerShell que não foi assinado pelo Trusted Publisher, você pode obter o seguinte erro de segurança.

<O arquivo PowerShell Script> não é assinado digitalmente. Você não pode rodar
este script no sistema atual. Para mais informações sobre como executar scripts e definir a política de execução, veja
sobre_Execution_Policies em http://go.microsoft.com/fwlink/?LinkID=135170.

Erro PowerShell

Como resolver o erro PowerShell script não está assinado digitalmente?

Existem algumas resoluções para este problema. Você pode assinar o script PowerShell que deseja executar, alterar a política de execução, ignorar a política ou desbloquear o arquivo para que ele possa ser executado uma vez naquela sessão.

Verificar política de execução

Você pode executar Get-ExecutionPolicy cmdlet para obter sua Política de Execução.

get-executionpolicy

Você também pode adicionar parâmetro -list para obter a política de execução para cada escopo.

get-executionpolicy -list

Change Execution Policy Permanently

O método mais fácil mas não seguro de se livrar desta mensagem de erro é alterar a ExecutionPolicy usando o parâmetro Set-ExecutionPolicy cmdlet e definir a política de execução para irrestrita.

Set-ExecutionPolicy -ExecutionPolicy unrestricted

Alterar Temporariamente a Política de Execução

Para alterar temporariamente a política de execução, você pode usar Set-ExecutionPolicy cmdlet com a configuração ByPass.

Set-ExecutionPolicy -ExecutionPolicy ByPass

Below é o detalhe dos valores aceitáveis para o parâmetro -ExecutionPolicy:

  • Restricted. Não carrega arquivos de configuração nem executa scripts. Restrito é a política de execução padrão.
  • AllSigned. Requer que todos os scripts e arquivos de configuração sejam assinados por um editor confiável, incluindo os scripts que você escreve no computador local.
  • RemoteSigned. Requer que todos os scripts e arquivos de configuração baixados da Internet sejam assinados por um editor de confiança.
  • Sem restrições. Carrega todos os arquivos de configuração e executa todos os scripts. Se você executar um script não assinado que foi baixado da Internet, você será solicitado a obter permissão antes que ele seja executado.
  • Bypass. Nada é bloqueado e não há avisos ou prompts.
  • Undefined. Remove a política de execução atualmente atribuída do escopo atual. Este parâmetro não removerá uma política de execução que está definida no escopo da política de grupo.

O escopo padrão do comando Set-ExecutionPolicy é LocalMachine. Você também pode especificar em qual escopo a política será definida, adicionando o parâmetro -Scope. Abaixo está o detalhe dos escopos que você pode definir:

  • Process: A política de execução afeta apenas o processo PowerShell atual.
  • CurrentUser: A política de execução afeta apenas o usuário atual.
  • LocalMachine: A política de execução afeta todos os usuários do computador.

Para remover uma política de execução de um escopo particular, defina a política de execução para esse escopo como Indefinido.

Como Carregar…

Deixe uma resposta

O seu endereço de email não será publicado.