Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте расширение управления Microsoft Intune, чтобы отправлять сценарии PowerShell в Intune. для выполнения на устройствах Windows 10. Расширение управления расширяет возможности управления устройствами (MDM) Windows и упрощает переход на современные средства управления.
Примечание.
Сведения о расширении управления Intune для Windows см. в разделе расширение управления Intune для Windows.
Прежде чем начать
Если для сценариев задан пользовательский контекст, а у пользователя есть права администратора, сценарий PowerShell по умолчанию запускается с правами администратора.
Конечным пользователям не требуется выполнять вход на устройство для выполнения сценариев PowerShell.
После каждой перезагрузки расширение управления Intune проверяет наличие новых скриптов или изменений. После назначения политики группам Microsoft Entra выполняется скрипт PowerShell, а результаты выполнения отображаются. Последующее выполнение сценария происходит только при изменении сценария или политики. Если скрипт завершается сбоем, расширение управления Intune повторяет сценарий три раза в течение следующих трех последовательных Intune расширения управления проверка.
Сценарий PowerShell, назначенный устройству, будет выполняться для каждого нового пользователя, который выполняет вход, за исключением многосеансовых номеров SKU, где проверка пользователя отключен.
Скрипты PowerShell выполняются перед запуском приложений Win32. Иными словами, скрипты PowerShell выполняются первыми. Затем выполняются приложения Win32.
Время ожидания сценариев PowerShell истекает через 30 минут.
Важно!
Ниже приведены рекомендации по обеспечению конфиденциальности при использовании сценариев PowerShell и сценариев исправления.
- Не включайте в скрипты конфиденциальные сведения (например, пароли)
- Не включайте личную информацию (PII) в скрипты
- Не используйте скрипты для сбора персональных данных с устройств
- Всегда следуйте рекомендациям по обеспечению конфиденциальности
Дополнительные сведения см. в разделе Исправления.
Предварительные условия
- 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.
Выберите Теги области. Теги области являются необязательными. Дополнительные сведения см. в разделе Использование управления доступом на основе ролей (RBAC) и тегов области для распределенных ИТ.
Добавление тега области
Выберите Выбрать область теги> выберите существующий тег область в списке >Выбрать.
Когда закончите, нажмите Далее.
Выберите пункты Назначения>Выберите группы для включения. Отобразится существующий список 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 выберите сценарий для отслеживания, выберите Отслеживать, затем выберите один из следующих отчетов:
- Состояние устройства
- Состояние пользователя
Удаление скрипта
В области Сценарии 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 10 в режиме 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 обнаруживает, что Windows не управляется на следующем проверка IME (обычно каждые 8 часов), и отменяет выполнение скриптов. В то же время могут выполняться любые локально хранимые скрипты. Если IME не может проверка, он повторяет попытку входа в течение 24 часов (время пробуждения устройства), а затем удаляется с устройства Windows.
Дальнейшие действия
Мониторинг и устранение неполадок для профилей.