Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте расширение управления Microsoft Intune, чтобы отправлять сценарии PowerShell в Intune. Затем запустите эти сценарии на устройствах с Windows. Расширение для управления расширяет возможности MDM и упрощает переход к современному управлению.
Примечание.
Дополнительные сведения о расширении управления Intune для Windows см. в разделе Расширение управления Intune для Windows.
Подготовка к работе
Сценарии, настроенные в контексте пользователя с правами администратора, запускают PowerShell по умолчанию с правами администратора.
Конечным пользователям не требуется выполнять вход на устройство для выполнения сценариев PowerShell.
Расширение управления Intune проверяет наличие новых сценариев или изменений после каждой перезагрузки. После назначения политики группам Microsoft Entra запускается скрипт PowerShell и сообщается о результатах выполнения. Последующее выполнение сценария происходит только при изменении сценария или политики. В случае сбоя сценария расширение управления Intune трижды запускает сценарий для следующих трех последовательных проверок расширения управления Intune.
Сценарии PowerShell, назначенные устройству, запускаются для каждого нового пользователя, который входит в систему, за исключением номеров SKU с несколькими сеансами, где проверка пользователей отключена.
Скрипты PowerShell выполняются перед запуском приложений Win32. Иными словами, скрипты PowerShell выполняются первыми. Затем выполняются приложения Win32.
Время ожидания сценариев PowerShell истекает через 30 минут.
Важно!
Рекомендации по информированию о конфиденциальности при использовании сценариев PowerShell и сценариев исправления:
- Не включайте в сценарии конфиденциальные данные (например, пароли)
- Не включать персональные данные в сценарии
- Не используйте сценарии для сбора персональных данных с устройств
- Всегда следуйте рекомендациям по конфиденциальности
Дополнительные сведения см. в разделе "Исправления".
Предварительные условия
- Расширение управления Intune устанавливается автоматически, когда приложению-скрипту PowerShell назначается пользователю или устройству. Дополнительные сведения см. в разделе Расширение управления Intune для Windows.
Важно!
Сценарии, развернутые на клиентах с расширением управления Intune, не запускаются, если системные часы устройства значительно устарели на месяцы или годы. После обновления системных часов сценарий выполняется должным образом.
Создание и назначение политики сценариев
Войдите в Центр администрирования Microsoft Intune.
Выбор устройств>Сценарии и исправления>Сценарии платформы Добавление>>Windows 10 и более поздних версий.
В разделе Основные введите следующие свойства и нажмите кнопку Далее:
- Имя: введите имя сценария PowerShell.
- Описание: введите описание сценария PowerShell. Это необязательные данные, но рекомендуется их ввести.
В разделе Параметры сценария укажите следующие свойства и нажмите кнопку Далее:
Расположение сценария: выберите сценарий PowerShell. Размер сценария не должен превышать 200 КБ (ASCII).
Запустите этот сценарий с учетными данными, входящими в систему: выберите "Да " (по умолчанию), чтобы запустить сценарий с учетными данными пользователя на устройстве. Нажмите кнопку "Нет ", чтобы запустить сценарий в системном контексте. Многие администраторы выбирают Да. Если требуется запустить сценарий в контексте системы, выберите Нет.
Принудительная проверка подписи сценария: выберите "Да" (по умолчанию), если сценарий должен быть подписан надежным издателем. Выберите "Нет ", если не требуется подписывать сценарий.
Запуск сценария в 64-разрядном узле PowerShell: выберите Да, чтобы запустить сценарий в 64-разрядном узле PowerShell с 64-разрядной клиентской архитектурой. Выберите Нет (по умолчанию), чтобы запустить сценарий в 32-разрядном узле PowerShell.
При выборе значений Да или Нет используйте следующую таблицу, чтобы определить поведение новых и существующих политик:
Запуск скрипта на 64-разрядном узле Архитектура клиента Новый сценарий Существующий скрипт политики Нет 32-разрядная Поддерживается 32-разрядный узел PowerShell Скрипт запускается только на 32-разрядном узле PowerShell, который работает в 32- и 64-разрядных архитектурах. Да 64-разрядная Скрипт запускается на 64-разрядном узле PowerShell для 64-разрядных архитектур. Если запуск выполнялся в 32-разрядной системе, скрипт запускается на 32-разрядном узле PowerShell. Запуск скрипта на 32-разрядном узле PowerShell. При изменении значения этого параметра на 64-разрядную версию скрипт открывается (не запускается) на 64-разрядном узле PowerShell и выводит результаты. Если запуск выполнялся в 32-разрядной системе, скрипт запускается на 32-разрядном узле PowerShell.
Выберите Теги области. Теги области являются необязательными. Используйте функции управления доступом на основе ролей и теги областей для распределенных ИТ-ресурсов.
Добавление тега области
Нажмите кнопку Выбрать теги> областей Выберите существующий тег области из списка >Выберите.
Когда закончите, нажмите Далее.
Выберите пункты Назначения>Выберите группы для включения. Показан существующий список групп Microsoft Entra.
Выберите одну или несколько групп пользователей, чьи устройства получат сценарий. Нажмите Выбрать. Выбранные группы отобразятся в списке и получат вашу политику.
Примечание.
Сценарии PowerShell в Intune могут быть нацелены на группы безопасности устройств Microsoft Entra или группы безопасности пользователей Microsoft Entra. Однако при нацеливании на устройства, присоединенные к рабочему месту (WPJ), можно использовать только группы безопасности устройств Microsoft Entra (таргетинг пользователей игнорируется).
Нажмите кнопку Далее.
В окне Проверка и добавление отображается сводка по настроенным параметрам. Выберите Добавить, чтобы сохранить сценарий. Если нажать кнопку Добавить, политика будет развернута в выбранных группах.
Сценарий: сбой при запуске сценария
08:00
- Возврат
- Запуск скрипта ConfigScript01
- Сбой выполнения скрипта
09:00
- Возврат
- Запуск скрипта ConfigScript01
- Сбой выполнения скрипта (число повторных попыток = 1)
10:00
- Возврат
- Запуск скрипта ConfigScript01
- Сбой выполнения скрипта (число повторных попыток = 2)
11:00
- Возврат
- Запуск скрипта ConfigScript01
- Сбой выполнения скрипта (число повторных попыток = 3)
12:00
- Возврат
- Другие попытки запустить сценарий ConfigScript01не предпринимаются.
- Если в сценарий не вносятся другие изменения, то другие попытки запустить сценарий не предпринимаются.
Отслеживание состояния выполнения
На портале можно отслеживать состояние выполнения скриптов PowerShell для пользователей и устройств.
В области Сценарии PowerShell выберите сценарий для отслеживания, выберите Отслеживать, затем выберите один из следующих отчетов:
- Состояние устройства
- Состояние пользователя
Примечание.
При экспорте состояния устройства из Центра администрирования Intune для сценариев платформы теперь используется API экспорта Intune, а имена столбцов CSV согласуются со схемой API.
Удаление скрипта
В области Сценарии PowerShell щелкните сценарий правой кнопкой мыши и выберите Удалить.
Распространенные проблемы и способы их решения
Проблема: сценарии PowerShell не запускаются
Возможные решения:
Скрипты PowerShell не выполняются при каждом входе в систему. Они выполняются в следующих случаях:
когда скрипт назначается устройству;
когда вы изменяете скрипт, загружаете его и назначаете пользователю или устройству.
Совет
Расширение управления Intune Microsoft — это служба, которая выполняется на устройстве, как и любая другая служба, указанная в приложении "Службы" (services.msc). После перезагрузки устройства эта служба может перезапуститься и выполнить проверку на наличие любых назначенных сценариев PowerShell с помощью службы Intune. Если службе расширения управления Microsoft Intune присвоено значение "Вручную", служба может не перезапуститься после перезагрузки устройства.
Убедитесь, что устройства присоединены к Microsoft Entra ID. Устройства, зарегистрированные только на вашем рабочем месте или в организации в Microsoft Entra ID, не получают скрипты.
Убедитесь, что расширение управления Intune скачано в папку
%ProgramFiles(x86)%\Microsoft Intune Management Extension.Сценарии не выполняются на устройствах Surface Hub или в Windows в S-режиме.
Проверьте журналы на наличие ошибок. См. раздел Журналы расширения управления Intune (в этой статье).
Чтобы исключить проблемы с разрешениями, задайте
Run this script using the logged on credentialsв свойствах сценария PowerShell. Также убедитесь, что выполнивший вход пользователь имеет нужные разрешения на выполнение сценария.Чтобы определить проблемы со скриптами, сделайте следующее:
Проверьте конфигурацию выполнения PowerShell на устройствах. Инструкции см. в разделе Политика выполнения PowerShell.
Запустите пример скрипта с помощью расширения управления Intune. Например, создайте каталог
C:\Scriptsи предоставьте всем полный доступ к нему. Запустите следующий сценарий:write-output "Script worked" | out-file c:\Scripts\output.txtПри успешном выполнении будет создан файл output.txt с текстом "Script worked" (Сценарий отработал).
Чтобы проверить выполнение сценариев без Intune, запустите их в локальной системной учетной записи с помощью средства psexec:
psexec -i -sЕсли сценарий сообщает, что он выполнен успешно, но на самом деле это не так, то, возможно, антивирусная служба использует песочницу AgentExecutor. Следующий скрипт всегда сообщает об ошибке в Intune. В качестве теста можно использовать следующий скрипт:
Write-Error -Message "Forced Fail" -Category OperationStopped mkdir "c:\temp" echo "Forced Fail" | out-file c:\temp\Fail.txtЕсли сообщается о выполнении скрипта, проверьте
AgentExecutor.log, чтобы подтвердить ошибку. Если сценарий выполняется, длина должна быть равна >2.Для записи файлов
.errorи.outputследующий фрагмент кода выполняет скрипт с помощью AgentExecutor для PowerShell x86 (C:\Windows\SysWOW64\WindowsPowerShell\v1.0). При этом журналы сохраняются для проверки. Помните, что расширение управления Intune очищает журналы после выполнения скрипта:$scriptPath = read-host "Enter the path to the script file to execute" $logFolder = read-host "Enter the path to a folder to output the logs to" $outputPath = $logFolder+"\output.output" $errorPath = $logFolder+"\error.error" $timeoutPath = $logFolder+"\timeout.timeout" $timeoutVal = 60000 $PSFolder = "C:\Windows\SysWOW64\WindowsPowerShell\v1.0" $AgentExec = "C:\Program Files (x86)\Microsoft Intune Management Extension\agentexecutor.exe" &$AgentExec -powershell $scriptPath $outputPath $errorPath $timeoutPath $timeoutVal $PSFolder 0 0
Проблема: почему сценарии выполняются, хотя управление Windows больше не осуществляется?
Если управление устройством Windows с назначенными сценариями прекращено, IME не удаляется немедленно. IME определяет, что при следующей проверке IME (обычно каждые 8 часов) Windows не управляется, и отменяет запуск сценариев. В то же время можно запускать любые локально хранящиеся сценарии. Если IME не удается выполнить проверку, он повторяет попытку регистрации в течение 24 часов (время бодрствования устройства), а затем удаляется с устройства Windows.
Дальнейшие действия
Мониторинг и устранение неполадок для профилей.