Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Прежде чем использовать пользовательские параметры для обеспечения соответствия требованиям Microsoft Intune, необходимо создать сценарий, обнаруживающий пользовательские параметры соответствия на устройствах. Используемый сценарий зависит от платформы:
- Устройства с Windows используют скрипт PowerShell.
- На устройствах с Linux можно запускать сценарии на любом языке, если на устройстве установлен и настроен соответствующий интерпретатор.
Сценарий обнаружения развертывается на устройствах в рамках настраиваемых политик соответствия требованиям. При запуске на устройстве соответствия требованиям сценарий обнаруживает параметры, определенные в файле JSON, который вы предоставили при создании политики соответствия требованиям.
Все сценарии обнаружения:
- добавляются в Intune до создания политики соответствия требованиям; После добавления сценария его можно выбрать при создании политики соответствия требованиям с настраиваемыми параметрами.
- Каждый сценарий обнаружения можно использовать только с одной политикой соответствия, и каждая политика соответствия требованиям может включать только один сценарий обнаружения.
- Вы не можете удалить сценарии обнаружения, назначенные политике соответствия, пока не отмените назначение сценария из политики.
- Запустите на устройстве, на которое распространяется политика соответствия требованиям. Скрипт оценивает условия JSON-файла, отправляемого при создании настраиваемой политики соответствия требованиям.
- Определите один или несколько параметров, определенных в формате JSON, и верните список обнаруженных значений для этих параметров.
Кроме того, скрипт PowerShell для Windows:
Должен быть сжат для вывода результатов в одной строке. Например, следующий сценарий должен включать
return $hash | ConvertTo-Json -Compressв себя последнюю строку:$hash = @{ Manufacturer = $WMI_ComputerSystem.Manufacturer; BiosVersion = $WMI_BIOS.SMBIOSBIOSVersion; TPMChipPresent = $TPM.TPMPresent} return $hash | ConvertTo-Json -Compress
Ограничения
Чтобы успешно вернуть данные о соответствии требованиям в Intune, ваши сценарии должны оставаться в следующих пределах:
- Размер сценария не может превышать 1 мегабайт (МБ) каждый.
- Выходные данные, создаваемые каждым сценарием, не могут превышать 1 МБ.
- Сценарии должны иметь ограниченное время выполнения:
- В Linux для выполнения сценариев требуется не более пяти минут.
- В Windows для выполнения сценариев требуется не более 10 минут.
Пример сценария обнаружения для Windows
Ниже приведен пример сценария PowerShell, который можно использовать для устройств с Windows.
$WMI_ComputerSystem = Get-WMIObject -class Win32_ComputerSystem
$WMI_BIOS = Get-WMIObject -class Win32_BIOS
$TPM = Get-Tpm
$hash = @{ Manufacturer = $WMI_ComputerSystem.Manufacturer; BiosVersion = $WMI_BIOS.SMBIOSBIOSVersion; TPMChipPresent = $TPM.TPMPresent}
return $hash | ConvertTo-Json -Compress
В следующем примере показаны выходные данные примера сценария для Windows:
{"BiosVersion":"1.24","Manufacturer":"Microsoft Corporation","TPMChipPresent":true}
Пример сценария обнаружения для Linux
Примечание.
В Linux сценарии обнаружения выполняются в контексте пользователя. Они не могут выполнять проверку параметров системного уровня, требующих повышения прав. Примером такого ограничения является файл.state/hash/etc/sudoers
Сценарии обнаружения для Linux могут вызывать любой интерпретатор, соответствующий вашим требованиям. Перед развертыванием сценария убедитесь, что выбранный интерпретатор правильно установлен и настроен на целевом устройстве. Чтобы указать интерпретатор для скрипта, включите строку shebang в верхней части скрипта, указывающую путь к двоичному файлу интерпретатора.
Например, если сценарий должен использовать оболочку Bash в качестве интерпретатора, добавьте следующую строку в верхней части сценария:
#!/bin/bash
Чтобы использовать Python, укажите путь к интерпретатору. Например, добавьте следующую строку в начало сценария: #!/usr/bin/python3 или #!/usr/bin/env python3
Совет
Чтобы обрабатывать прерывания или сигналы отмены, реализуйте в сценариях механизмы корректного завершения. Когда сценарий обрабатывает эти сигналы, он может выполнять задачи очистки и корректно завершать, обеспечивая правильное высвобождение ресурсов. Например, можно перехватывать такие сигналы, как SIGINT (сигнал прерывания) или SIGTERM (сигнал завершения), и определять пользовательские действия, которые будут выполняться при их получении. Эти действия могут включать закрытие открытых файлов, снятие приобретенных блокировок или очистку временных ресурсов.
Дополнительные сведения см. в руководстве по примерам соответствия требованиям Intune Linux.
Добавление сценария обнаружения в Intune
Перед развертыванием сценария в рабочей среде протестируйте его в изолированной среде, чтобы убедиться, что используемый вами синтаксис работает должным образом.
Примечание.
Рабочий процесс отправки сценария не поддерживает теги областей. Вам должен быть назначен тег области по умолчанию для создания, изменения или просмотра пользовательских сценариев обнаружения соответствия требованиям.
Войдите в Центр администрирования Microsoft Intune и перейдите в раздел "Безопасность> конечной точки"Сценарии>соответствия> устройстватребованиям Добавить. Затем выберите платформу.
В разделе "Основы" введите описательное имя сценария.
В разделе "Параметры" добавьте сценарий в сценарий обнаружения. Внимательно просмотрите свой сценарий. Intune не проверяет сценарий на наличие синтаксических или программных ошибок.
Только для Windows — в параметрах настройте следующее поведение сценария PowerShell:
- Запустите этот сценарий с использованием учетных данных, вошедших в систему . По умолчанию сценарий запускается в контексте System на устройстве. Задайте для этого параметра значение "Да ", чтобы он запускался в контексте вошедшего в систему пользователя. Если пользователь не вошел в систему, сценарий по умолчанию возвращается к системному контексту.
- Принудительное проверка подписей сценариев — дополнительные сведения см. в разделе about_Signing документации по PowerShell.
- Запуск сценария в 64-разрядной версии узла PowerShell — по умолчанию сценарий выполняется с использованием 32-разрядного узла PowerShell. Задайте для этого значения значение Yes , чтобы заставить скрипт запускаться с использованием 64-разрядного узла.
Завершите создание сценария. Сценарий отображается в области сценариев и доступен для выбора при настройке политик соответствия.