Consulta de dispositivo para vários dispositivos

Use a consulta de dispositivo para vários dispositivos no Microsoft Intune para executar consultas de Linguagem de Consulta Kusto (KQL) em dados de inventário de dispositivos e identificar tendências em sua frota gerenciada. Este artigo explica os pré-requisitos, como criar e executar consultas no centro de administração do Intune, como trabalhar com resultados e quais operadores, funções e propriedades têm suporte.

Antes de começar

Pré-requisitos adicionais para consulta de dispositivo para vários dispositivos:

Requisitos da plataforma do dispositivo

A consulta de dispositivo para vários dispositivos suporta:

  • Windows
  • Android
    • Dispositivos Android Enterprise dedicados de propriedade corporativa (COSU)
    • Dispositivos Android Enterprise totalmente gerenciados de propriedade corporativa (COBO)
    • Perfil de trabalho de propriedade corporativa do Android Enterprise (COPE)
  • Apple
    • iOS/iPadOS
    • macOS

Requisitos de configuração do dispositivo

A consulta de dispositivo para vários dispositivos dá suporte a dispositivos que são:

  • Gerenciado pelo Intune e marcado como de propriedade corporativa.
  • Os dispositivos Windows devem ter uma política de catálogo de propriedades implantada para coletar dados de inventário.
    Para iOS/iPadOS, Android e macOS, os dados são coletados automaticamente e uma política de catálogo de propriedades separada não precisa ser implantada.

Requisitos de funções

Para usar a consulta de dispositivo para vários dispositivos, use uma conta com pelo menos uma das seguintes funções:

  • Operador do Suporte Técnico
  • Função personalizada que inclui:
    • A permissão Managed Devices/Query
    • Permissões que fornecem visibilidade e acesso a dispositivos gerenciados no Intune (por exemplo, Organização/Leitura, Dispositivos gerenciados/Leitura)

Usar a consulta de dispositivo para vários dispositivos

  1. No Centro de administração do Microsoft Intune, selecione Consultade dispositivo de dispositivos>.
  2. Insira uma consulta na caixa de consulta usando as propriedades e os operadores com suporte.
  3. Selecione Executar para executar a consulta.
  4. Exiba os resultados na guia Resultados .
    • Para executar parte de uma consulta ou uma única consulta quando várias consultas estiverem presentes, realce a consulta que você deseja executar e selecione Executar. Somente a consulta realçada é executada.

Você pode expandir a exibição no lado esquerdo para ver todas as propriedades disponíveis que você pode consultar. Selecione uma propriedade para inseri-la na consulta. Você também pode redimensionar o painel esquerdo e a janela de consulta para ajustar o layout.

Para obter mais informações sobre a Linguagem de Consulta Kusto (KQL), consulte Saiba mais sobre a Linguagem de Consulta Kusto.

Dica

Use o Copilot no Intune para gerar consultas KQL para consulta de dispositivo usando solicitações de linguagem natural. Para saber mais, consulte Consulta com o Copilot na consulta de dispositivo.

Resultados da consulta e ações

Depois de executar uma consulta, os resultados são exibidos na guia Resultados . Você pode interagir com os resultados de várias maneiras:

  • Quando uma consulta retorna 50 itens ou menos, você pode pesquisar em todas as linhas nos resultados e aplicar filtros usando cabeçalhos de coluna.
  • Crie grupos de segurança do Microsoft Entra diretamente dos resultados de uma consulta selecionando Adicionar todos os itens a um grupo. Essa ação ajuda você a direcionar dispositivos específicos com as políticas de Acesso Condicional do Microsoft Entra ou políticas do Microsoft Intune.
  • Selecione Exportar para salvar os resultados em um arquivo .csv. Você pode exportar todas as colunas ou apenas colunas selecionadas. Você pode exportar até 50.000 resultados para um arquivo.

Consultas de exemplo

Para ajudá-lo a começar, esta seção fornece algumas consultas de exemplo. Para acessar as consultas de exemplo, expanda a seção de consultas de exemplo na página Introdução e selecione a consulta que deseja adicionar à janela de consulta. A seção a seguir mostra a lista de consultas de exemplo.

Principais processadores por contagem de núcleos

Essa consulta mostra as cinco principais CPUs por contagem de núcleos.

Cpu
| project Device, ProcessorId, Model, Architecture, CpuStatus, ProcessorType, CoreCount, LogicalProcessorCount, Manufacturer, AddressWidth
| order by CoreCount asc
| take 5

Dispositivos com discos desprotegidos

Essa consulta lista os dispositivos com discos não criptografados.

EncryptableVolume
| where ProtectionStatus != "PROTECTED"
| join LogicalDrive on Device

Dispositivos ARM64

Essa consulta lista todos os dispositivos com um processador ARM64.

Cpu
| where Architecture == "ARM64"

Contagem de dispositivos por arquitetura do processador

Esta consulta fornece um resumo dos dispositivos por arquitetura de CPU.

Cpu
| summarize DeviceCount = count() by Architecture

Principais dispositivos por capacidade de bateria

Esta consulta lista os 10 principais dispositivos por capacidade de bateria totalmente carregada.

Battery
| project Device, InstanceName, Manufacturer, Model, SerialNumber, CycleCount,
          DesignedCapacity,
          FullChargedCapacity,
          FullChargedCapacityPercent = (FullChargedCapacity * 100) / DesignedCapacity
| top 10 by FullChargedCapacityPercent asc

Informações de memória de dispositivos

Essa consulta lista dispositivos com memória física e virtual em GB.

MemoryInfo
| project Device,
          PhysicalMemoryGB = PhysicalMemoryTotalBytes/(1000*1000*1000),
          VirtualMemoryGB = VirtualMemoryTotalBytes/(1000*1000*1000)
| order by PhysicalMemoryGB asc

Contagem de dispositivos por versão do sistema operacional

Esta consulta fornece um resumo dos dispositivos por versão do sistema operacional.

OsVersion| summarize DevicesCount = count() by OsVersion

Informações do BIOS do dispositivo

Esta consulta lista dispositivos com base no fabricante do BIOS.

BiosInfo| where Manufacturer contains "Microsoft"

Dispositivos TPM desabilitados

Essa consulta lista dispositivos que têm o TPM desabilitado.

Tpm | where Enabled != true

Operadores com suporte

A consulta de dispositivo suporta apenas um subconjunto dos operadores suportados na Linguagem de Consulta Kusto (KQL). No momento, há suporte para os seguintes operadores:

Operadores de tabela

Os operadores de tabela podem ser usados para filtrar, resumir e transformar fluxos de dados. Os seguintes operadores são suportados:

Operador de tabela Descrição
count Retorna uma tabela com um único registro contendo o número de registros.
distinct Produz uma tabela com combinações distintas das colunas fornecidas na tabela de entrada.
join Mescla linhas de duas tabelas para formar uma nova tabela com base nos valores correspondentes nas colunas especificadas. Há suporte para os seguintes tipos de junção:
- innerunique (padrão)
- inner
- leftouter
- rightouter
- fullouter
- leftsemi
- rightsemi
- leftanti
- rightanti

As instruções de junção dão suporte a uma cláusula opcional on . Em cenários de consulta de dispositivo, você normalmente usa on Device ao unir tabelas que contêm uma Device entidade. Sintaxe comum para join é: LeftTable | join [hints] (RightTable) on Conditions.

Importante: As junções que usam on Device.DeviceID não são mais suportadas. As consultas especificadas on Device.DeviceId atualmente devem alternar para o uso on Deviceou omitir a on cláusula ao ingressar na Device entidade.

Para obter mais informações, consulte Operador Join.
order by Classifica as linhas da tabela de entrada por uma ou mais colunas.
project Seleciona colunas a serem incluídas, renomeadas ou descartadas e insere novas colunas computadas.
take Retorna até o número especificado de linhas.
top Retorna os primeiros N registros classificados pelas colunas especificadas.
where Filtra uma tabela para o subconjunto de linhas que satisfazem um predicado.
summarize Produz uma tabela que agrega o conteúdo da tabela de entrada.

Observação

Device é um tipo de entidade e não pode ser usado diretamente em operadores que exigem valores escalares (como distinct, summarize, e order by). Para esses operadores, use uma propriedade escalar específica do dispositivo (por exemplo, Device.SerialNumber ou Device.OSVersion).

Operadores escalares

Operadores escalares podem ser usados para executar operações em valores individuais. Os seguintes operadores são suportados:

Operadores Descrição Exemplo
== Igual a 1 == 1, 'aBc' == 'AbC'
!= Diferente 1 != 2, 'abc' != 'abcd'
< Menos 1 < 2, 'abc' < 'DEF'
> Maior 2 > 1, 'xyz' > 'XYZ'
<= Menor ou igual 1 <= 2, 'abc' <= 'abc'
>= Maior ou igual 2 >= 1, 'abc' >= 'ABC'
+ Adicionar 2 + 1, now() + 1d
- Subtrair 2 - 1, now() - 1h
* Multiplicar 2 * 2
/ Dividir 2 / 1
% Módulo 2 % 1
like LHS contém uma correspondência para RHS 'abc' like '%B%'
contains O RHS ocorre como uma subsequência do LHS 'abc' contains 'b'
!contains O RHS não ocorre no LHS 'team' !contains 'i'
startswith RHS é uma subsequência inicial de LHS 'team' startswith 'tea'
!startswith RHS não é uma subsequência inicial de LHS 'abc' !startswith 'bc'
endswith RHS é uma subsequência de fechamento de LHS 'abc' endswith 'bc'
!endswith RHS não é uma subsequência de fechamento de LHS 'abc' !endswith 'a'
and Verdadeiro se e somente se RHS e LHS forem verdadeiros (1 == 1) and (2 == 2)
or Verdadeiro se e somente se RHS ou LHS for verdadeiro (1 == 1) or (1 == 2)

Funções de agregação

As funções de agregação podem ser usadas para resumir dados. As seguintes funções são suportadas:

Função Descrição
avg() retorna a média dos valores no grupo
count() Retorna uma contagem dos registros por grupo de resumo
countif() Retorna uma contagem de linhas para as quais Predicado é avaliado como verdadeiro
dcount() retorna o número de valores distintos no grupo
max() retorna o valor máximo em todo o grupo
maxif() Retorna o valor máximo em todo o grupo para o qual Predicado é avaliado como verdadeiro
min() retorna o valor mínimo em todo o grupo
minif() Retorna o valor mínimo em todo o grupo para o qual Predicado é avaliado como verdadeiro
percentile() retorna uma estimativa para o percentil de classificação mais próxima especificado da população definida por Expr
sum() retorna a soma dos valores em todo o grupo
sumif() retorna uma soma de Expr para a qual Predicado é avaliado como verdadeiro

Funções escalares

As funções escalares podem ser usadas para executar operações em valores individuais. As seguintes funções são suportadas:

Função Descrição
ago() Subtrai o intervalo de tempo determinado do horário do relógio UTC atual.
bin() Arredonda valores para baixo para um número de múltiplos de data e hora de um determinado tamanho de compartimento.
case() Avalia uma lista de predicados e retorna a primeira expressão de resultado cujo predicado é satisfeito.
datetime_add() Calcula uma nova data e hora de uma parte de data especificada multiplicada por uma quantidade especificada, adicionada a uma data e hora especificada. Não há suporte para valores negativos para o parâmetro amount.
datetime_diff() Calcula a diferença entre dois valores de data e hora.
iif() Avalia o primeiro argumento e retorna o valor do segundo ou do terceiro argumentos, dependendo se o predicado é avaliado como verdadeiro (segundo) ou falso (terceiro).
indexof() Relata o índice baseado em zero da primeira ocorrência de uma cadeia de caracteres especificada dentro da cadeia de caracteres de entrada.
isnotnull() Avalia seu único argumento e retorna um valor booliano que indica se o argumento é avaliado como um valor não nulo.
isnull() Avalia seu único argumento e retorna um valor booliano que indica se o argumento é avaliado como um valor nulo.
now() Retorna a hora do relógio UTC atual.
strcat() Concatena entre 1 e 64 argumentos.
strlen() Retorna o comprimento, em caracteres, da cadeia de caracteres de entrada.
substring() Extrai uma subcadeia de caracteres de uma cadeia de caracteres de origem a partir de algum índice até o final da cadeia de caracteres.
tostring() Converte a entrada em uma representação de cadeia de caracteres.

Propriedades compatíveis

A consulta de dispositivo dá suporte às entidades a seguir. Para saber mais sobre quais propriedades têm suporte para cada entidade, consulte Esquema da plataforma de dados do Intune.

  • Apple Auto Setup Admin Accounts
  • Apple Device States
  • Apple Update Settings
  • Battery
  • Bios Info
  • Bluetooth
  • Cellular
  • CPU
  • Device Storage
  • Disk Drive
  • Encryptable Volume
  • Local AI Agent
  • Logical Drive
  • Memory Info
  • Network Adapter
  • Os Version
  • Shared iPad
  • Sim Info
  • System Enclosure
  • SystemInfo
  • Time
  • Tpm
  • Video Controller
  • Windows Qfe

Entidade do dispositivo

A consulta de dispositivo para vários dispositivos dá suporte a uma entidade vinculada. A entidade Device pode ser usada com todas as outras entidades com suporte. A entidade device dá suporte às seguintes propriedades:

Propriedade Tipo Descrição
DeviceId Cadeia de caracteres Uma ID exclusiva gerada pelo Intune como parte do registro do dispositivo.
EntraDeviceId Cadeia de caracteres ID exclusiva gerada pelo Microsoft Entra como parte do registro ou ingresso no Microsoft Entra.
ManagementName Cadeia de caracteres Um nome de dispositivo facilmente reconhecível usado somente no centro de administração do Intune. Alterar esse nome não altera o nome do dispositivo ou o nome no Portal da Empresa.
DeviceName Cadeia de caracteres Nome do dispositivo
SerialNumber Cadeia de caracteres Número de série do dispositivo
Manufacturer Cadeia de caracteres Fabricante do dispositivo
Model Cadeia de caracteres Modelo do dispositivo
OSDescription Cadeia de caracteres Descrição completa da edição do sistema operacional
OSVersion Cadeia de caracteres A versão do sistema operacional do dispositivo.
EnrollmentProfileName Cadeia de caracteres Nome do perfil de registro atribuído ao dispositivo. O valor padrão é uma cadeia de caracteres vazia indicando que nenhum perfil de registro foi atribuído ao dispositivo.
EnrolledDateTime Datetime A data e hora em que o dispositivo foi registrado no Intune.
CertExpirationDateTime Datetime Relata a data de expiração do certificado de gerenciamento de dispositivo.
EnrolledByUserId Cadeia de caracteres Identificador exclusivo para o usuário que registrou o dispositivo
PrimaryUserId Cadeia de caracteres Identificador exclusivo para o usuário associado ao dispositivo.
LastLoggedOnUserId Cadeia de caracteres Identificador exclusivo do usuário que fez o logon por último no dispositivo.
InCompliancePeriodUntilDateTime Datetime DateTime em que o período de cortesia de conformidade do dispositivo termina
DeviceCategoryId Cadeia de caracteres Nome de exibição da categoria de dispositivo. O padrão é uma cadeia de caracteres vazia.
LastSeenDateTime Cadeia de caracteres A data e hora em que o dispositivo se conectou pela última vez no Intune.
Ownership Cadeia de caracteres Propriedade do dispositivo.

A Device entidade permite que você faça referência a informações de dispositivo associadas a cada linha resultante sem a necessidade de ingressar explicitamente em uma tabela de dispositivos.

Por padrão, os resultados da consulta incluem uma coluna de entidade que fornece o Device contexto do dispositivo para cada linha. Operadores como project, summarize, ou distinct podem alterar quais colunas são retornadas.

Device Representa o dispositivo associado à linha resultante e pode ser referenciado diretamente como uma coluna de tipo de entidade. Quando exibida nos resultados da consulta, a entidade é mostrada Device usando um identificador amigável, como o nome do dispositivo, para facilitar a identificação de dispositivos.

Você pode fazer referência a propriedades da Device entidade em consultas usando Device.[Property].

A consulta a seguir retorna todas as DiskDrive informações para dispositivos com um número de série específico:

DiskDrive
| where Device.SerialNumber == "123"

A consulta a seguir projeta a Device entidade e a Manufacturer propriedade da DiskDrive entidade:


DiskDrive
| project Device, Manufacturer

Por padrão, os resultados da consulta incluem uma Device entidade que representa o dispositivo associado a cada linha. A Device entidade é uma coluna de tipo de entidade e não é resolvida implicitamente para uma propriedade escalar específica. Ao classificar ou filtrar resultados, faça referência explícita à propriedade device que deseja usar. Por exemplo, esta consulta ordena os resultados por nome do dispositivo:


MemoryInfo
| order by Device.DeviceName

Da mesma forma, para filtrar pelo nome do dispositivo, faça referência DeviceName à propriedade diretamente:


Cpu
| where Device.DeviceName == "Desktop123"

Limitações conhecidas

  • O uso de colunas de tipo de entidade, como Device em funções de agregação, pode mostrar um sublinhado vermelho no editor porque as funções de agregação exigem valores escalares. Para evitar isso, faça referência a uma propriedade escalar específica da entidade. Por exemplo:

    Cpu
    | summarize max(CpuUsage) by Device.Manufacturer
    
  • Consultas que usam o operador com $left parâmetros e $right podem mostrar um sublinhado join vermelho no editor. No entanto, a consulta ainda pode ser executada e retornar os resultados conforme o esperado.

  • Uma única consulta pode conter no máximo três join operadores. Consultas com mais junções falham.

  • Um máximo de ~50.000 registros são retornados para uma consulta.

  • No máximo 10 consultas podem ser enviadas por minuto. Consultas adicionais no mesmo minuto falham.

  • No máximo 1.000 consultas podem ser enviadas por mês.

  • Não há suporte para valores negativos para o amount parâmetro da datetime_add() função.

  • Fazer referência a uma variável que foi gerada por uma função de agregação sem nomeá-la explicitamente pode fazer com que uma consulta falhe. Nomear explicitamente a variável permite que a consulta seja bem-sucedida. Por exemplo:

    • A consulta Device | summarize dcount(DeviceId) | order by dcount_DeviceId falhou.
    • A consulta Device | summarize DCountDeviceIdRename = dcount(DeviceId) | order by DCountDeviceIdRename foi bem-sucedida.
    • No momento, não há suporte para a assistência NL2KQL para a entidade "Agente de IA Local".