none
Выполнение PowerShell скриптов через GPO RRS feed

  • Вопрос

  • Добрый день!

    На всех компьютерах домена необходимо выполнить определенный скрипт на PowerShell. В политике указано разрешать все сценарии.

    На компьютере домена при выполнении команды Get-ExecutionPolicy -list получаю следующий результат:

    Scope                           ExecutionPolicy

    -----                         ---------------
    MachinePolicy           Unrestricted
    UserPolicy                 Undefined
    Process                     Undefined
    CurrentUser              Undefined
    LocalMachine            Undefined

    Скрипт назначен на выключение компьютера. При его выполнении появляется сообщение об ошибке "Не удается загрузить файл ... так как выполнение скриптов запрещено для данной системы".

    Если на компьютере выполнить Set-ExecutionPolicy Unrestricted, то LocalMachine поменяется на Unrestricted и скрипт выполнится при перезагрузке. 

    Что делать ? Как можно поменять значение LocalMachine на всех ПК?


    17 ноября 2014 г. 7:19

Ответы

  • Тогда:

    • Open Group Policy Management Editor
    • Browse to Computer Configuration> Preferences>Windows Settings> Registry
    • Right click and create a new registry item:

      • Action: Update
      • Hive: HKEY_LOCAL_MACHINE
      • Key Path: SOFTWARE\Microsoft\PowersShell\1\ShellIds\Microsoft.PowerShell
      • Value name: ExecutionPolicy
      • Value type: REG_SZ
      • Value data: Unrestricted

    • Помечено в качестве ответа Kirill_p 18 ноября 2014 г. 8:17
    17 ноября 2014 г. 8:41
    Отвечающий

Все ответы

  • about_Execution_Policies - http://technet.microsoft.com/en-us/library/hh847748.aspx

    Пункт - USE GROUP POLICY TO MANAGE EXECUTION POLICY

    -- If you enable "Turn on Script Execution", you can select an
           execution policy. The Group Policy settings are equivalent to
           the following execution policy settings.
    
            Group Policy                Execution Policy  
            ------------                ----------------
            Allow all scripts.          Unrestricted
    
            Allow local scripts         RemoteSigned
            and remote signed
            scripts. 
    
            Allow only signed           AllSigned
            scripts. 
    

    For Windows XP and Windows Server 2003:
            Administrative Templates\Windows Components\Windows PowerShell

            For Windows Vista and later versions of Windows:
            Administrative Templates\Classic Administrative Templates\
            Windows Components\Windows PowerShell

    • Предложено в качестве ответа Vector BCOModerator 17 ноября 2014 г. 7:45
    17 ноября 2014 г. 7:30
    Отвечающий
  • Так и есть:

    У меня есть политика, в которой Turn on Script Execution - Enable и Execution Policy - Allow all Script. Однако это меняет только MachinePolicy Scope. Мне надо изменить значение LocalMachine

    17 ноября 2014 г. 8:12
  • Тогда:

    • Open Group Policy Management Editor
    • Browse to Computer Configuration> Preferences>Windows Settings> Registry
    • Right click and create a new registry item:

      • Action: Update
      • Hive: HKEY_LOCAL_MACHINE
      • Key Path: SOFTWARE\Microsoft\PowersShell\1\ShellIds\Microsoft.PowerShell
      • Value name: ExecutionPolicy
      • Value type: REG_SZ
      • Value data: Unrestricted

    • Помечено в качестве ответа Kirill_p 18 ноября 2014 г. 8:17
    17 ноября 2014 г. 8:41
    Отвечающий
  • Спасибо, то что надо
    18 ноября 2014 г. 8:17