Microsoft Security Copilot の GPT プラグイン
Kusto 照会言語 (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
次の表は、任意の KQL スキル ターゲットに対して構成できる settings
を示しています。
設定名 | 型 | 説明 | 必須 |
---|---|---|---|
Template |
string | KQL プロンプト テンプレート。 最大 80,000 文字をサポートします。 | はい (TemplateUrl が指定されていない場合)。 |
TemplateUrl |
string | KQL プロンプト テンプレートをダウンロードするためのパブリック URL (最大 80,000 文字)。 | はい。 TemplatUrl またはテンプレートのいずれかを指定しますが、両方を指定することはできません。 |
PackageUrl |
string | KQL プロンプト テンプレートが含まれる zip ファイルのパブリック URL。 注: これは SkillGroup レベルで指定されます。 GPT スキル パッケージurl に似ています - 例。 | はい (テンプレートまたは TemplateUrl が指定されていない場合)。 |
TemplateFile |
string | PackageUrl zip ファイル内の KQL プロンプト テンプレートへの相対パス (最大 80,000 文字)。 | はい (PackageUrl が指定されている場合)。 |
これらの設定は、Target
が Sentinel
の KQL スキルに対して有効です。
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:
これらの設定は、Target
が Kusto
の KQL スキルに対して有効です。
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