Windows PowerShell. Execução de scripts foi desabilitada neste sistema

Seguridade

Por padrão, os scripts do Windows PowerShell não têm permissão para serem executados no sistema. Por motivos de segurança, todos os scripts do PowerShell devem ser assinados digitalmente, um método chamado de política de tempo de execução.

Se um script não atender a essa condição, os scripts do PowerShell não poderão ser executados no sistema. Isso se deve principalmente ao fato de que o script pode conter código malicioso que pode prejudicar o sistema operacional.

O PowerShell tem vários modos de execução que determinam o tipo de código que pode ser executado. Há cinco modos de execução diferentes:

  1. Restrito (Restricted) – valor padrão. Todos os scripts são bloqueados e os comandos interativos são permitidos.
  2. Todos os scripts assinados (All Signed) – que têm uma assinatura digital têm permissão para serem executados.
  3. Assinatura remota (Remote Signed) – os scripts locais funcionam sem assinatura. Todos os scripts baixados devem ser assinados digitalmente.
  4. Ilimitado (Unrestricted) – a execução de quaisquer scripts é permitida. Se você executar um script não assinado que foi baixado da Internet, o programa poderá exigir confirmação.
  5. Solução alternativa (Bypass) – nada é bloqueado, nenhum aviso ou solicitação é exibido.

O modo padrão do PowerShell é “Restricted” (restrito). Nesse modo, o PowerShell é executado como um shell interativo. Se você não tiver configurado o PowerShell antes, verá uma mensagem de erro escrita em fonte vermelha, como na captura de tela abaixo, em vez da execução do script.

A maneira mais segura de resolver esse problema é alterar a política de tempo de execução para irrestrita, executar o script e, em seguida, reverter para a política restrita.

Para alterar a política de execução para Ilimitada, vamos usar o console do PowerShell aberto com privilégios de Administrador e executar o seguinte comando:

Set-ExecutionPolicy Unrestricted

Depois de executar o comando, você será solicitado a confirmar a alteração da política de tempo de execução. Responda S (Sim).

Agora você pode executar o script. No entanto, você está colocando o sistema em sério risco, portanto, quando o script terminar de ser executado, certifique-se de reverter a política de execução para o modo restrito. Você pode fazer isso usando o seguinte comando:

Set-ExecutionPolicy Restricted

Depois de executar o comando, você será solicitado a confirmar a alteração da política de tempo de execução. Resposta S (Sim)

A seguir estão todos os comandos para alterar a política de execução.

Bloquear a execução de qualquer script. Valor padrão.

Set-ExecutionPolicy Restricted

A execução de scripts assinados digitalmente é permitida.

Set-ExecutionPolicy AllSigned

Os scripts preparados em um computador local podem ser executados sem restrições, enquanto os scripts baixados da Internet só podem ser executados se forem assinados digitalmente.

Set-ExecutionPolicy RemoteSigned

A execução de qualquer script é permitida. Se você executar um script não assinado que foi baixado da Internet, o programa poderá solicitar confirmação.

Set-ExecutionPolicy Unrestricted

Nada é bloqueado, nenhum aviso ou consulta é exibido.

Set-ExecutionPolicy Bypass

Para executar os comandos acima sem confirmar a alteração, use o parâmetro -Force, por exemplo, execute o comando:

Set-ExecutionPolicy Bypass -Force

Agora você não precisa confirmar as alterações feitas ao executar comandos.

Avaliar artigo
Compartilhar com amigos
Winnotas.com.br
Adicionar um comentário