Прочитать на английском

Поделиться через


Подключаемые модули KQL в Microsoft Copilot для безопасности

Создавайте мощные подключаемые модули с помощью запросов язык запросов Kusto (KQL) для изучения данных и обнаружения шаблонов.

Параметры навыков KQL

Общие параметры

Эти параметры являются общими для всех навыков KQL.

Settings:
  # What type of KQL endpoint to connect to.
  # One of { Defender, Sentinel, LogAnalytics, Kusto }
  Target: Sentinel
  # A URL to download the KQL query template from.
  # Specify either TemplatUrl or Template but not both.
  TemplateUrl: https://gist.githubusercontent.com/NitinKumarGoel/c862ba63878dd2624acb1b0e260f409a/raw/3a527014757b4ee1f00302a1b34a13e7b83ff77a/gistfile1.txt
  # An inline KQL query template.
  # Specify either TemplatUrl or Template but not both.
  Template: |-
    SigninLogs
    | where UserDisplayName == '{{user}}' or UserPrincipalName == '{{user}}'
    | project TimeGenerated, OperationName, UserDisplayName, UserPrincipalName, Location, ResourceDisplayName, ConditionalAccessStatus, IsInteractive
    | top 100 by TimeGenerated desc

В таблицы показаны параметры (settings), которые можно настроить для любых целевых объектов навыков KQL.

Имя параметра Тип Описание Обязательный
Template string Шаблон запроса KQL. Поддерживает до 80 000 символов. Да, если TemplateUrl не указан.
TemplateUrl string Общедоступный URL-адрес для скачивания шаблона запроса KQL (до 80 000 символов). Да. Можно задать либо TemplateUrl, либо Template, но не оба этих параметра одновременно.
PackageUrl string Общедоступный URL-адрес ZIP-файла с шаблоном запроса KQL. Примечание. Этот параметр задается на уровне SkillGroup. Пример аналогичен пакету навыков GPT. Да, если шаблон или TemplateUrl не указаны.
TemplateFile string Относительный путь к шаблону запроса KQL (до 80 000 символов) в ZIP-файле PackageUrl. Да, если указан PackageUrl.

Параметры целевого объекта

Целевой объект: Sentinel

Эти параметры действуют для навыков KQL, у которых Target имеет значение Sentinel.

Settings:
  # The ID of the AAD Organization that the Sentinel workspace is in.
  TenantId:
  # The id of the Azure Subscription that the Sentinel workspace is in.
  SubscriptionId:
  # The name of the Resource Group that the Sentinel workspace is in.
  ResourceGroupName:
  # The name of the Sentinel workspace.
  WorkspaceName:

Целевой объект: Kusto

Эти параметры действуют для навыков KQL, у которых Target имеет значение Kusto.

Settings:
  # The Kusto cluster URL.
  Cluster: 
  # The Kusto database name.
  Database: 

Пример

Descriptor:
  Name: SampleDefenderKQL
  DisplayName: My Sample Defender KQL Plugin
  Description: Skills to query email logs in M365 Advanced Hunting

SkillGroups:
  - Format: KQL
    Skills:
      - Name: GetLatestEmailsByRecipient
        DisplayName: Get Latest Emails By Recipient
        Description: Fetches the latest emails received by the user with the specified email address
        Inputs:
          - Name: email
            Description: The email address of the recipient
            Required: true
        Settings:
          Target: Defender
          Template: |-
            EmailEvents
            | where RecipientEmailAddress =~ '{{email}}'
            | project Timestamp, NetworkMessageId, SenderFromAddress, SenderDisplayName, Subject, DeliveryLocation
            | top 100 by Timestamp desc