Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Прежде чем использовать настраиваемые параметры для соответствия требованиям 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 — On Settings (Только для Windows — On Settings) настройте для сценария PowerShell следующее поведение:
- Запустите этот скрипт, используя учетные данные для входа . По умолчанию скрипт выполняется в контексте системы на устройстве. Задайте для этого значения значение Да , чтобы оно выполнялось в контексте вошедшего в систему пользователя. Если пользователь не вошел в систему, сценарий по умолчанию возвращается в контекст системы.
- Принудительное проверка подписи скрипта. Дополнительные сведения см. в about_Signing документации по PowerShell.
- Выполнение скрипта на 64-разрядном узле PowerShell . По умолчанию скрипт выполняется с помощью 32-разрядного узла PowerShell. Присвойте этому значению значение Да , чтобы скрипт выполнялся с помощью 64-разрядного узла.
Завершите процесс создания скрипта. Скрипт отображается в области Скрипты и доступен для выбора при настройке политик соответствия.