Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Используйте запрос устройств для нескольких устройств в Microsoft Intune, чтобы выполнять запросы на языке запросов языка запросов Kusto (KQL) по данным инвентаризации устройств и выявлять тенденции в управляемом парке. В этой статье описаны предварительные требования, создание и выполнение запросов в Центре администрирования Intune, работа с результатами, а также поддерживаемые операторы, функции и свойства.
Подготовка к работе
- Убедитесь, что ваша среда соответствует всем предварительным требованиям.
Дополнительные необходимые условия для запроса нескольких устройств:
Требования к платформе устройства
Запрос устройства для нескольких устройств поддерживает:
- Windows
- Android
- Android Enterprise — выделенные корпоративные устройства (COSU)
- Android Enterprise — полностью управляемые корпоративные устройства (COBO)
- Android Enterprise — корпоративный рабочий профиль (COPE)
- Apple
- iOS/iPadOS
- macOS
Требования к конфигурации устройств
Запрос устройства для нескольких устройств поддерживает следующие устройства:
- Управляется Intune и помечен как корпоративный.
- Для сбора данных инвентаризации на устройствах с Windows должна быть развернута политика каталога свойств .
Для iOS/iPadOS, Android и macOS данные собираются автоматически, и не нужно развертывать отдельную политику каталога свойств.
Требования к ролям
Чтобы использовать запрос устройств для нескольких устройств, используйте учетную запись хотя бы с одной из следующих ролей:
- Оператор службы технической поддержки
- Пользовательская роль , включающая следующее:
- Разрешение Управляемые устройства/запрос
- Разрешения, обеспечивающие видимость и доступ к управляемым устройствам в Intune (например, Организация / чтение, управляемые устройства / чтение)
Использовать запрос для нескольких устройств
- В Центре администрирования Microsoft Intune выберите"Запросы устройств>".
- Введите запрос в поле запроса, используя поддерживаемые свойства и операторы.
- Выберите Выполнить для выполнения запроса.
- Просмотр результатов на вкладке "Результаты ".
- Чтобы выполнить часть запроса или один запрос, если их несколько, выделите нужный запрос и нажмите кнопку "Выполнить". Выполняется только выделенный запрос.
Можно развернуть представление в левой части, чтобы увидеть все доступные свойства, которые можно запросить. Выберите свойство, чтобы вставить его в запрос. Вы также можете изменить размер левой области и окна запроса, чтобы настроить макет.
Дополнительные сведения о языке запросов Kusto (KQL) см. в статье Дополнительные сведения о языке запросов Kusto.
Совет
Используйте Copilot в Intune для создания запросов KQL для запросов устройств с помощью запросов на естественном языке. Дополнительные сведения см. в статье "Запрос с помощью Copilot в запросе устройства".
Результаты запроса и действия
После выполнения запроса результаты появятся на вкладке "Результаты ". С результатами можно взаимодействовать несколькими способами:
- Если запрос возвращает 50 элементов или меньше, можно выполнить поиск во всех строках результатов и применить фильтры по заголовкам столбцов.
- Создавайте группы безопасности Microsoft Entra непосредственно из результатов запроса, выбрав "Добавить все элементы в группу". Это действие поможет вам настроить определенные устройства с помощью политик условного доступа Microsoft Entra или политик Microsoft Intune.
- Выберите "Экспорт", чтобы сохранить результаты в .csv файле. Вы можете экспортировать все столбцы или только выбранные. В файл можно экспортировать до 50 000 результатов.
Примеры запросов
Чтобы помочь вам приступить к работе, в этом разделе приводятся примеры запросов. Чтобы получить доступ к примерам запросов, разверните раздел "Примеры запросов " на странице "Начало работы " и выберите запрос, который требуется добавить в окно запроса. В следующем разделе приведен список примеров запросов.
Лучшие процессоры по количеству ядер
Этот запрос показывает пять основных ЦП по количеству ядер.
Cpu
| project Device, ProcessorId, Model, Architecture, CpuStatus, ProcessorType, CoreCount, LogicalProcessorCount, Manufacturer, AddressWidth
| order by CoreCount asc
| take 5
Устройства с незащищенными дисками
В этом запросе перечислены устройства с незашифрованными дисками.
EncryptableVolume
| where ProtectionStatus != "PROTECTED"
| join LogicalDrive on Device
Устройства ARM64
В этом запросе перечислены все устройства с процессором ARM64.
Cpu
| where Architecture == "ARM64"
Количество устройств в зависимости от архитектуры процессора
Этот запрос предоставляет сводку устройств по архитектуре ЦП.
Cpu
| summarize DeviceCount = count() by Architecture
Лучшие устройства по емкости батареи
В этом запросе перечислены 10 лучших устройств по полной емкости батареи.
Battery
| project Device, InstanceName, Manufacturer, Model, SerialNumber, CycleCount,
DesignedCapacity,
FullChargedCapacity,
FullChargedCapacityPercent = (FullChargedCapacity * 100) / DesignedCapacity
| top 10 by FullChargedCapacityPercent asc
Сведения о памяти устройств
В этом запросе перечислены устройства с физической и виртуальной памятью в ГБ.
MemoryInfo
| project Device,
PhysicalMemoryGB = PhysicalMemoryTotalBytes/(1000*1000*1000),
VirtualMemoryGB = VirtualMemoryTotalBytes/(1000*1000*1000)
| order by PhysicalMemoryGB asc
Количество устройств по версиям ОС
Этот запрос предоставляет сводку устройств по версиям ОС.
OsVersion| summarize DevicesCount = count() by OsVersion
Сведения BIOS устройства
В этом запросе устройства указаны в зависимости от производителя BIOS.
BiosInfo| where Manufacturer contains "Microsoft"
Устройства, отключенные TPM
В этом запросе перечислены устройства, на которых отключен доверенный платформенный модуль.
Tpm | where Enabled != true
Поддерживаемые операторы
Запрос устройства поддерживает только подмножество операторов, поддерживаемых в языке запросов Kusto (KQL). В настоящее время поддерживаются следующие операторы:
Операторы таблиц
Операторы таблиц можно использовать для фильтрации, обобщения и преобразования потоков данных. Поддерживаются следующие операторы:
| Оператор таблицы | Описание |
|---|---|
count |
Возвращает таблицу с одной записью, содержащей число записей. |
distinct |
Создает таблицу с определенными комбинациями столбцов, предоставленных входной таблицей. |
join |
Объединение строк из двух таблиц для создания новой таблицы на основе совпадающих значений в указанных столбцах. Поддерживаются следующие типы соединений: - innerunique (Значение по умолчанию.)- inner- leftouter- rightouter- fullouter- leftsemi- rightsemi- leftanti- rightantiОператоры соединения поддерживают необязательное on предложение. В сценариях запросов к устройствам обычно используются on Device при соединении таблиц, содержащих Device сущность. Общий синтаксис for join : LeftTable | join [hints] (RightTable) on Conditions.Важно! Такие соединения on Device.DeviceID больше не поддерживаются. Запросы, которые в настоящее время указывают on Device.DeviceId , должны переключиться на использование on Device, или опустить on предложение при присоединении к объекту Device .Дополнительные сведения см. в разделе Оператор присоединения. |
order by |
Сортирует строки входной таблицы по одному или нескольким столбцам. |
project |
Выбор столбцов для включения, переименования или удаления и вставка новых вычисляемых столбцов. |
take |
Возвращает до указанного количества строк. |
top |
Возвращает первые N записей, отсортированных по указанным столбцам. |
where |
Фильтрует таблицу по подмножеству строк, удовлетворяющих предикату. |
summarize |
Создает таблицу, в которой агрегатируется содержимое входной таблицы. |
Примечание.
Device является типом сущности и не может использоваться непосредственно в операторах, требующих скалярных значений (таких как distinct, , summarize, и order by). Для этих операторов используйте определенное скалярное свойство устройства (например, Device.SerialNumber или Device.OSVersion).
Скалярные операторы
Скалярные операторы можно использовать для выполнения операций с отдельными значениями. Поддерживаются следующие операторы:
| Операторы | Описание | Пример |
|---|---|---|
== |
Равно |
1 == 1, 'aBc' == 'AbC' |
!= |
Не равно |
1 != 2, 'abc' != 'abcd' |
< |
Меньше |
1 < 2, 'abc' < 'DEF' |
> |
Больше |
2 > 1, 'xyz' > 'XYZ' |
<= |
Меньше или равно |
1 <= 2, 'abc' <= 'abc' |
>= |
Больше или равно |
2 >= 1, 'abc' >= 'ABC' |
+ |
Добавить |
2 + 1, now() + 1d |
- |
Subtract |
2 - 1, now() - 1h |
* |
Multiply | 2 * 2 |
/ |
Divide | 2 / 1 |
% |
Модуль | 2 % 1 |
like |
LHS содержит совпадение для RHS | 'abc' like '%B%' |
contains |
RHS возникает как последствие LHS | 'abc' contains 'b' |
!contains |
RHS не возникает при LHS | 'team' !contains 'i' |
startswith |
RHS является начальным последствием LHS | 'team' startswith 'tea' |
!startswith |
RHS не является начальным последствием LHS | 'abc' !startswith 'bc' |
endswith |
RHS является заключительным последствием LHS | 'abc' endswith 'bc' |
!endswith |
RHS не является завершающим последствием LHS | 'abc' !endswith 'a' |
and |
Истинно тогда и только тогда, когда RHS и LHS истинны | (1 == 1) and (2 == 2) |
or |
Истинно тогда и только тогда, когда RHS или LHS истинны | (1 == 1) or (1 == 2) |
Функции агрегирования
Функции агрегирования можно использовать для суммирования данных. Поддерживаются следующие функции:
| Функция | Описание |
|---|---|
avg() |
Возвращает среднее арифметическое значений по группе. |
count() |
Возвращает количество записей в группе суммирования. |
countif() |
Возвращает количество строк, для которых предикат принимает значение ИСТИНА. |
dcount() |
Возвращает количество уникальных значений в группе. |
max() |
Возвращает максимальное значение по всей группе. |
maxif() |
Возвращает максимальное значение в группе, для которой предикат принимает значение ИСТИНА. |
min() |
Возвращает минимальное значение по всей группе. |
minif() |
Возвращает минимальное значение в группе, для которого предикат принимает значение ИСТИНА. |
percentile() |
Возвращает оценку указанного процентиля ближайшего ранга генеральной совокупности, определенной выражением |
sum() |
Возвращает сумму значений в группе. |
sumif() |
Возвращает сумму выражения, для которой предикат принимает значение ИСТИНА. |
Скалярные функции
Скалярные функции можно использовать для выполнения операций с отдельными значениями. Поддерживаются следующие функции:
| Функция | Описание |
|---|---|
ago() |
Вычитает указанный временной интервал из текущего времени в формате UTC. |
bin() |
Округляет значения в меньшую сторону до числа, кратного дате и времени заданному размеру ячейки. |
case() |
Вычисляет список предикатов и возвращает первое выражение результата, предикат которого выполнен. |
datetime_add() |
Вычисляет новую функцию datetime из указанного значения datepart, умноженное на указанную величину, добавленную к указанному значению datetime. Отрицательные значения для параметра amount не поддерживаются. |
datetime_diff() |
Вычисляет разницу между двумя значениями даты и времени. |
iif() |
Вычисляет первый аргумент и возвращает значение второго или третьего аргумента в зависимости от того, дал ли предикат значение Истина (второй) или Ложь (третий). |
indexof() |
Возвращает отсчитываемый от нуля индекс для первого вхождения указанной строки во входной строке. |
isnotnull() |
Вычисляет свой единственный аргумент и возвращает логическое значение, указывающее, принимает ли аргумент ненулевое значение. |
isnull() |
Вычисляет свой единственный аргумент и возвращает логическое значение, указывающее, принимает ли аргумент значение Null. |
now() |
Возвращает текущее время в формате UTC. |
strcat() |
Объединяет от 1 до 64 аргументов. |
strlen() |
Возвращает длину входной строки в выражениях. |
substring() |
Извлекает подстроку из исходной строки, начиная с некоторого индекса до конца строки. |
tostring() |
Преобразует ввод данных в строковое представление. |
Поддерживаемые свойства
Запрос устройства поддерживает следующие сущности. Подробнее о том, какие свойства поддерживаются для каждой сущности, см. Схема платформы данных Intune.
Apple Auto Setup Admin AccountsApple Device StatesApple Update SettingsBatteryBios InfoBluetoothCellularCPUDevice StorageDisk DriveEncryptable VolumeLocal AI AgentLogical DriveMemory InfoNetwork AdapterOs VersionShared iPadSim InfoSystem EnclosureSystemInfoTimeTpmVideo ControllerWindows Qfe
Сущность устройства
Запрос устройства для нескольких устройств поддерживает связанную сущность. Сущность Device можно использовать со всеми другими поддерживаемыми сущностями. Сущность device поддерживает следующие свойства:
| Свойство | Тип | Описание |
|---|---|---|
DeviceId |
String | Уникальный идентификатор, созданный Intune в процессе регистрации устройства. |
EntraDeviceId |
String | Уникальный идентификатор, созданный Microsoft Entra в рамках регистрации или присоединения к Microsoft Entra. |
ManagementName |
String | Легко различимое имя устройства, используемое только в Центре администрирования Intune. При этом не изменяется имя устройства или имя на корпоративном портале. |
DeviceName |
String | Название устройства |
SerialNumber |
String | Серийный номер устройства |
Manufacturer |
String | Производитель устройства |
Model |
String | Модель устройства |
OSDescription |
String | Полное описание выпуска операционной системы |
OSVersion |
String | Версия операционной системы на устройстве. |
EnrollmentProfileName |
String | Имя профиля регистрации, назначенного устройству. Значение по умолчанию — это пустая строка, указывающая, что устройству не назначен профиль регистрации. |
EnrolledDateTime |
Дата и время | Дата и время регистрации устройства в Intune. |
CertExpirationDateTime |
Дата и время | Сообщает дату окончания срока действия сертификата управления устройствами. |
EnrolledByUserId |
String | Уникальный идентификатор пользователя, зарегистрировавшего устройство |
PrimaryUserId |
String | Уникальный идентификатор пользователя, связанный с устройством. |
LastLoggedOnUserId |
String | Уникальный идентификатор пользователя, который в последний раз входил в устройство. |
InCompliancePeriodUntilDateTime |
Дата и время | Дата и время истечения льготного периода соответствия устройства требованиям |
DeviceCategoryId |
String | Отображаемое имя категории устройств. Значение по умолчанию является пустой строкой. |
LastSeenDateTime |
String | Дата и время последнего подключения устройства к Intune. |
Ownership |
String | Владение устройством. |
Сущность Device позволяет ссылаться на сведения об устройстве, связанные с каждой результирующей строкой, без необходимости явного соединения с таблицей устройств.
По умолчанию результаты запроса включают столбец сущности Device , который предоставляет контекст устройства для каждой строки. Такие операторы, как project, summarizeмогут distinct изменить тип возвращаемых столбцов.
Device Представляет устройство, связанное с результирующей строкой, и на него можно ссылаться непосредственно как на столбец типа объекта. При отображении Device в результатах запроса сущность отображается с использованием понятного идентификатора, например имени устройства, чтобы облегчить идентификацию устройств.
Вы можете ссылаться на свойства Device объекта в запросах с помощью Device.[Property].
Следующий запрос возвращает все DiskDrive сведения об устройствах с определенным серийным номером:
DiskDrive
| where Device.SerialNumber == "123"
Следующий запрос проецирует сущность и свойство DeviceManufacturer сущности DiskDrive :
DiskDrive
| project Device, Manufacturer
По умолчанию результаты запроса включают Device сущность, представляющую устройство, связанное с каждой строкой. Сущность Device является столбцом типа сущности и не разрешается неявно в конкретное скалярное свойство.
При сортировке или фильтрации результатов явно ссылайтесь на свойство устройства, которое вы хотите использовать. Например, этот запрос упорядочивает результаты по имени устройства:
MemoryInfo
| order by Device.DeviceName
Аналогичным образом, чтобы отфильтровать по имени устройства, укажите свойство DeviceName напрямую:
Cpu
| where Device.DeviceName == "Desktop123"
Известные ограничения
При использовании столбцов типа сущностей, например
Deviceв функциях агрегирования, в редакторе может отображаться красная линия подчеркивания, поскольку для функций агрегирования требуются скалярные значения. Чтобы избежать этого, ссылайтесь на конкретное скалярное свойство объекта. Например, вы можете:Cpu | summarize max(CpuUsage) by Device.ManufacturerЗапросы, использующие
joinоператор и$left$rightи параметры, могут подчеркиваться красным цветом в редакторе. Однако запрос по-прежнему может выполняться и возвращать результаты, как и ожидалось.Один запрос может содержать не более трех
joinоператоров. Запросы с большим количеством соединений завершаются сбоем.Для запроса возвращается не более ~50 000 записей.
В минуту можно отправлять не более 10 запросов. Дополнительные запросы в течение той же минуты завершаются сбоем.
В месяц можно отправлять не более 1000 запросов.
Отрицательные значения параметра
amountdatetime_add()функции не поддерживаются.Ссылка на переменную, созданную функцией агрегирования, без явного ее имени, может привести к сбою запроса. Явное имя переменной позволяет успешно выполнить запрос. Например, вы можете:
- Сбой запроса
Device | summarize dcount(DeviceId) | order by dcount_DeviceId. - Запрос
Device | summarize DCountDeviceIdRename = dcount(DeviceId) | order by DCountDeviceIdRenameобработан успешно. - Поддержка NL2KQL для сущности "Локальный агент ИИ" в настоящее время не поддерживается.
- Сбой запроса