Busca avançada usando o PowerShell
Aplica-se a:
Deseja experimentar o Microsoft Defender para Ponto de Extremidade? Inscreva-se para uma avaliação gratuita.
Observação
Se você for um cliente do governo dos EUA, use as URIs listadas em Microsoft Defender para Ponto de Extremidade para clientes do governo dos EUA.
Dica
Para obter um melhor desempenho, você pode usar o servidor mais próximo da localização geográfica:
- us.api.security.microsoft.com
- eu.api.security.microsoft.com
- uk.api.security.microsoft.com
- au.api.security.microsoft.com
- swa.api.security.microsoft.com
Execute consultas avançadas usando o PowerShell. Para obter mais informações, consulte API de Caça Avançada.
Nesta seção, compartilhamos exemplos do PowerShell para recuperar um token e usá-lo para executar uma consulta.
Antes de começar
Primeiro, você precisa criar um aplicativo.
Instruções de preparação
Abra uma janela do PowerShell.
Se sua política não permitir que você execute os comandos do PowerShell, você poderá executar o seguinte comando:
Set-ExecutionPolicy -ExecutionPolicy Bypass
Para obter mais informações, confira Documentação do PowerShell.
Obter token
- Execute:
$tenantId = '00000000-0000-0000-0000-000000000000' # Paste your own tenant ID here
$appId = '11111111-1111-1111-1111-111111111111' # Paste your own app ID here
$appSecret = '22222222-2222-2222-2222-222222222222' # Paste your own app secret here
$resourceAppIdUri = 'https://api.securitycenter.microsoft.com'
$oAuthUri = "https://login.microsoftonline.com/$TenantId/oauth2/token"
$body = [Ordered] @{
resource = "$resourceAppIdUri"
client_id = "$appId"
client_secret = "$appSecret"
grant_type = 'client_credentials'
}
$response = Invoke-RestMethod -Method Post -Uri $oAuthUri -Body $body -ErrorAction Stop
$aadToken = $response.access_token
Em que
- $tenantId: ID do locatário em nome do qual você deseja executar a consulta (ou seja, a consulta é executada nos dados desse locatário)
- $appId: ID do aplicativo Microsoft Entra (o aplicativo deve ter permissão 'Executar consultas avançadas' para o Defender para Ponto de Extremidade)
- $appSecret: Segredo do seu aplicativo de Microsoft Entra
Executar consulta
Execute a seguinte consulta:
$token = $aadToken
$query = 'DeviceRegistryEvents | limit 10' # Paste your own query here
$url = "https://api.securitycenter.microsoft.com/api/advancedhunting/run"
$headers = @{
'Content-Type' = 'application/json'
Accept = 'application/json'
Authorization = "Bearer $aadToken"
}
$body = ConvertTo-Json -InputObject @{ 'Query' = $query }
$webResponse = Invoke-WebRequest -Method Post -Uri $url -Headers $headers -Body $body -ErrorAction Stop
$response = $webResponse | ConvertFrom-Json
$results = $response.Results
$schema = $response.Schema
- $results conter os resultados da consulta
- $schema contém o esquema dos resultados da consulta
Consultas complexas
Se você quiser executar consultas complexas (ou consultas multilines), salve sua consulta em um arquivo e, em vez da primeira linha no exemplo acima, execute o seguinte comando:
$query = [IO.File]::ReadAllText("C:\myQuery.txt"); # Replace with the path to your file
Trabalhar com os resultados da consulta
Agora você pode usar os resultados da consulta.
Para gerar os resultados da consulta no formato CSV no file1.csv de arquivo, execute o seguinte comando:
$results | ConvertTo-Csv -NoTypeInformation | Set-Content C:\file1.csv
Para gerar os resultados da consulta no formato JSON no file1.json de arquivo, execute o seguinte comando:
$results | ConvertTo-Json | Set-Content file1.json
Artigo relacionado
Dica
Você deseja aprender mais? Engage com a comunidade de Segurança da Microsoft em nossa Comunidade Tecnológica: Microsoft Defender para Ponto de Extremidade Tech Community.
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de