Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте расширение управления 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 обнаруживает, что Windows не управляется на следующем проверка IME (обычно каждые 8 часов), и отменяет выполнение скриптов. В то же время могут выполняться любые локально хранящиеся скрипты. Если IME не может проверка, он повторяет попытку входа в течение 24 часов (время пробуждения устройства), а затем удаляется с устройства Windows.
Дальнейшие действия
Мониторинг и устранение неполадок для профилей.