DOC / 1466 SysAdminHub.ru

Как исправить ошибку «Отсутствует цифровая подпись» при запуске скрипта PowerShell

Исправление ошибки Отсутствует цифровая подпись

Почему же возникает эта ошибка и как можно разрешить выполнение таких скриптов без цифровой подписи? В этой статье я расскажу о причинах данной проблемы и покажу два способа её решения: через свойства файла и с помощью PowerShell.

Ошибка отсутствия цифровой подписи

Запустите PowerShell с правами администратора и выполните ранее загруженный скрипт.

C:\Scripts\.\Script.ps1

В результате выполнения команды появляется следующая ошибка:

.\Script.ps1 : File C:\Scripts\Script.ps1 cannot be loaded. The file C:\Scripts\Script.ps1 is not digitally signed. You
 cannot run this script on the current system. For more information about running scripts and setting execution policy,
 see about_Execution_Policies at http://go.microsoft.com/fwlink/?LinkID=135170.
At line:1 char:1
+ .\Script.ps1
+ ~~~~~~~~~~~~
    + CategoryInfo          : SecurityError: (:) [], PSSecurityException
    + FullyQualifiedErrorId : UnauthorizedAccess

В нашем случае проблема возникает со скриптом, который был загружен из интернета. Windows помечает такие файлы как полученные с другого компьютера, из-за чего PowerShell может ограничить их выполнение.

Как исправить ошибку отсутствия цифровой подписи

Сначала откройте папку со скриптом PowerShell. Найдите нужный файл, щёлкните по нему правой кнопкой мыши и выберите Свойства.

Исправление ошибки Отсутствует цифровая подпись

На вкладке Общие в нижней части окна вы увидите раздел Безопасность. Здесь будет указано, что файл был получен с другого компьютера и, возможно, заблокирован с целью защиты компьютера.

Если вы доверяете источнику, из которого был загружен скрипт, установите флажок Разблокировать и нажмите ОК.

Исправление ошибки Отсутствует цифровая подпись 02

Теперь повторно запустите PowerShell-скрипт. Он должен выполниться без сообщения об ошибке, связанного с блокировкой загруженного файла.

Исправление ошибки отсутствия цифровой подписи с помощью PowerShell

Если вы предпочитаете разблокировать файл через PowerShell, используйте командлет Unblock-File.

Например, следующая команда разблокирует файл Script.ps1, а затем запустит его:

Unblock-File C:\Scripts\Script.ps1 ; C:\Scripts\.\Script.ps1

Если в папке или её вложенных каталогах находится много скриптов, их можно разблокировать все сразу. Для этого выполните следующую команду:

Get-ChildItem -Path "C:\Scripts\" -Recurse | Unblock-File

Эта команда рекурсивно обработает файлы в указанной папке и её вложенных каталогах, передавая их командлету Unblock-File.

Часто задаваемые вопросы

Почему скачанный PowerShell-скрипт не запускается?

Windows может пометить файл, загруженный из интернета или полученный с другого компьютера, как потенциально небезопасный. В зависимости от настроенной политики выполнения PowerShell это может препятствовать запуску скрипта.

Почему другие PowerShell-скрипты запускаются без ошибки?

Проблема может возникать именно со скачанным файлом, который Windows пометила как полученный из внешнего источника. Локально созданные скрипты такой отметки обычно не имеют.

Как разблокировать PowerShell-скрипт через Проводник?

Щёлкните по файлу правой кнопкой мыши, выберите Свойства, на вкладке Общие установите флажок Разблокировать и нажмите ОК.

Как разблокировать PowerShell-скрипт командой?

Используйте командлет Unblock-File. Например: Unblock-File C:\Scripts\Script.ps1.

Можно ли разблокировать сразу несколько файлов?

Да. Например, команда Get-ChildItem -Path "C:\Scripts\" -Recurse | Unblock-File позволяет обработать файлы в указанном каталоге и его вложенных папках.

Нужно ли менять Execution Policy для решения этой проблемы?

В рассматриваемом сценарии политика выполнения PowerShell не изменяется. Мы снимаем блокировку непосредственно с загруженного файла с помощью его свойств или командлета Unblock-File.

Безопасно ли использовать Unblock-File?

Командлет сам по себе не делает файл безопасным. Он лишь снимает блокировку Windows, поэтому перед его использованием необходимо убедиться, что вы доверяете источнику и содержимому скрипта.

Заключение

Теперь вы знаете, как устранить ошибку, связанную с отсутствием цифровой подписи при выполнении загруженного PowerShell-скрипта. Если вы доверяете файлу, его можно разблокировать через свойства в Проводнике или с помощью командлета Unblock-File, после чего повторно запустить скрипт.

Вам понравилась эта статья? Тогда вам, скорее всего, будет интересна другая полезная статья Как исправить ошибку «Компьютер является членом группы доступности базы данных (DAG)».

ORIGINAL / ATTRIBUTION

Источник материала

Материал взят с https://sysadminhub.ru/. Оригинальная статья и авторство указаны по ссылке ниже.

Оригинал статьи на SysAdminHub.ru ↗

https://sysadminhub.ru/produkty-microsoft/windows-server/not-digitally-signed-error-when-running-powershell-script

Материал проверен 10.10.2026. При изменении программного обеспечения сверяйтесь с актуальной документацией.
← Вернуться в базу знаний