サンプル IdentityDrift テレメトリとサポート テーブルを Sentinel データ レイクに取り込みます。 このデータは、このシリーズの後続の記事でクエリを実行できます。
SigninLogs、AADRiskyUsers、CommonSecurity_ID_Logs、DeviceProcessEvents、SecurityAlerts の各テーブルにデータを取り込むには、以下の各タブの KQL クエリを使用して、KQL ジョブを作成する手順を繰り返します。
KQL ジョブで次のクエリを使用して、Sentinel データ レイクの AADRiskyUsers テーブルにサンプルの危険なユーザー データを取り込みます。
datatable(
TimeGenerated:datetime,
CorrelationId:string,
Id:string,
IsDeleted:bool,
IsProcessing:bool,
OperationName:string,
RiskDetail:string,
RiskLastUpdatedDateTime:datetime,
RiskLevel:string,
RiskState:string,
UserDisplayName:string,
UserPrincipalName:string
)
[
datetime(2026-03-05T14:22:00Z), "riskcorr-identity-047", "a7d2f8c1-4e2b-48f3-9a06-2e5c7b3d9f1a", false, false, "RiskyUserDetected", "adminConfirmedUserCompromised", datetime(2026-02-28T10:15:00Z), "high", "confirmedCompromised", "U1291", "u1291@contoso.onmicrosoft.com",
datetime(2026-03-05T15:18:00Z), "riskcorr-identity-052", "b9e4a6d2-7f3c-41b8-a2e5-3f6c8d1e2b4a", false, false, "RiskyUserUpdated", "anonymousIpAddress", datetime(2026-02-27T14:42:00Z), "medium", "atRisk", "U3415", "u3415@contoso.onmicrosoft.com",
datetime(2026-03-05T16:33:00Z), "riskcorr-identity-059", "c5f1b7e3-9d4a-42c1-b8f6-5e7d9c2a3f5b", false, false, "RiskyUserUpdated", "userPerformedSecuredPasswordReset", datetime(2026-02-26T11:20:00Z), "medium", "remediated", "U2847", "u2847@contoso.onmicrosoft.com",
];
KQL ジョブで次のクエリを使用して、Sentinel データ レイクの CommonSecurity_ID_Logs テーブルにサンプル ID ドリフト ログを取り込みます。
datatable(
TimeGenerated: datetime,
SourceUserName: string,
SourceIP: string,
DestinationHostName: string,
DeviceCustomString1: string,
DeviceCustomString1Label: string,
AdditionalExtensions: string
)
[
// u1291 – MFA-approved privileged access to AKS
datetime(2026-03-05T09:20:48Z),
"u1291@contoso.onmicrosoft.com",
"185.92.44.17",
"prod-aks-eastus",
"MFA Approved",
"Authentication Status",
"User accessed Kubernetes cluster with ClusterAdmin role",
// u1291 – privilege escalation detected
datetime(2026-03-05T09:22:36Z),
"u1291@contoso.onmicrosoft.com",
"185.92.44.17",
"prod-aks-eastus",
"Privilege Escalation",
"Authentication Status",
"RoleBinding created granting cluster-admin privileges",
// u2847 – sensitive workload interaction
datetime(2026-03-05T11:50:14Z),
"u2847@contoso.onmicrosoft.com",
"185.92.44.17",
"prod-aks-eastus",
"Sensitive Access",
"Authentication Status",
"kubectl exec executed on workload with known ingress vulnerability",
// u3415 – service-level access to backup storage
datetime(2026-03-05T10:45:02Z),
"u3415@contoso.onmicrosoft.com",
"10.10.5.24",
"stgprodbackup01",
"Access Allowed",
"Authentication Status",
"Service account accessed production backup storage"
]
KQL ジョブで次のクエリを使用して、Sentinel データ レイクの DeviceProcessEvents テーブルにサンプル デバイス プロセス イベントを取り込みます。
datatable(
TimeGenerated:datetime,
DeviceName:string,
DeviceId:string,
ActionType:string,
FileName:string,
FolderPath:string,
ProcessId:long,
ProcessCommandLine:string,
ProcessIntegrityLevel:string,
AccountName:string,
AccountDomain:string,
InitiatingProcessFileName:string,
InitiatingProcessCommandLine:string,
InitiatingProcessAccountName:string,
InitiatingProcessAccountDomain:string
)
[
// Record 1 – Azure CLI authentication and subscription context
datetime(2026-03-05T09:23:15.445Z),
"WIN-DESKTOP-CONTOSO-401",
"d7e2f9c3a5b1e8d4c6f2",
"ProcessCreated",
"az.exe",
@"C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\",
4156,
"az login",
"Medium",
"u1291",
"contoso.onmicrosoft.com",
"powershell.exe",
"powershell.exe -Command az login",
"u1291",
"contoso.onmicrosoft.com",
// Record 2 – AKS credential retrieval (kubectl context setup)
datetime(2026-03-05T10:47:22.831Z),
"WIN-DESKTOP-CONTOSO-502",
"c3a4b8d2e7f1a5c9e6d4",
"ProcessCreated",
"az.exe",
@"C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin\",
5843,
"az aks get-credentials --resource-group rg-prod --name prod-aks-eastus",
"Medium",
"u3415",
"contoso.onmicrosoft.com",
"cmd.exe",
"cmd.exe /c az aks get-credentials --resource-group rg-prod --name prod-aks-eastus",
"u3415",
"contoso.onmicrosoft.com",
// Record 3 – Kubernetes workload inspection
datetime(2026-03-05T11:52:09.567Z),
"WIN-DESKTOP-CONTOSO-603",
"b9c1d5e8f2a4c6d9e1f3",
"ProcessCreated",
"kubectl.exe",
@"C:\Program Files\Kubernetes\",
6521,
"kubectl get pods -A",
"High",
"u2847",
"contoso.onmicrosoft.com",
"explorer.exe",
"explorer.exe",
"u2847",
"contoso.onmicrosoft.com"
]
KQL ジョブで次のクエリを使用して、Sentinel データ レイクの SecurityAlerts テーブルにサンプル セキュリティ アラートを取り込みます。
datatable(
TimeGenerated: datetime,
DisplayName: string,
AlertName: string,
AlertSeverity: string,
Description: string,
ProviderName: string,
VendorName: string,
AlertType: string,
ConfidenceLevel: string,
IsIncident: bool,
CompromisedEntity: string,
ExtendedProperties: dynamic,
Entities: dynamic,
ProductName: string
)
[
// AKS – malware execution blocked after privilege escalation activity
datetime(2026-03-05T09:24:10Z),
"Microsoft Defender for Cloud Kubernetes malware execution blocked",
"Kubernetes malware execution blocked on node",
"High",
"Malware execution was detected and blocked on a Kubernetes node. The activity occurred shortly after privileged access and RBAC changes were performed on the cluster, increasing confidence of malicious intent.",
"Azure Security Center",
"Microsoft",
"K8S.NODE_MalwareBlocked",
"High",
true,
"prod-aks-eastus",
dynamic({
"ClusterName": "prod-aks-eastus",
"Namespace": "prod",
"NodeRole": "Worker",
"DetectionSource": "microsoftDefenderForContainers",
"SuspiciousActivity": "Malware execution in container runtime",
"RelatedContext": "Recent ClusterAdmin access and RoleBinding creation detected"
}),
dynamic([
{
"Type": "KubernetesCluster",
"Name": "prod-aks-eastus",
"CloudPlatform": "Azure"
},
{
"Type": "Host",
"HostName": "prod-aks-eastus"
}
]),
"Azure Security Center",
// AKS – binary drift blocked on vulnerable workload
datetime(2026-03-05T11:51:58Z),
"Microsoft Defender for Cloud Kubernetes binary drift blocked",
"Kubernetes workload binary drift blocked",
"Medium",
"Execution of a workload binary that drifted from the original container image was detected and blocked. The affected workload resides in a production Kubernetes cluster and is associated with a workload previously accessed via kubectl exec.",
"Azure Security Center",
"Microsoft",
"K8S.NODE_DriftBlocked",
"Medium",
true,
"prod-aks-eastus",
dynamic({
"ClusterName": "prod-aks-eastus",
"Namespace": "prod",
"Workload": "ingress-controller",
"DriftType": "Binary drift from image baseline",
"DetectionSource": "microsoftDefenderForContainers"
}),
dynamic([
{
"Type": "KubernetesCluster",
"Name": "prod-aks-eastus",
"CloudPlatform": "Azure"
},
{
"Type": "Host",
"HostName": "prod-aks-eastus"
}
]),
"Azure Security Center"
];
KQL ジョブで次のクエリを使用して、Sentinel データ レイクの SigninLogs テーブルにサンプルのサインイン ログを取り込みます。
datatable(
TimeGenerated: datetime,
UserPrincipalName: string,
UserId: string,
AppDisplayName: string,
ClientAppUsed: string,
AuthenticationRequirement: string,
ConditionalAccessStatus: string,
RiskLevelAggregated: string,
RiskState: string,
RiskDetail: string,
Location: dynamic,
IPAddress: string,
DeviceDetail: dynamic,
Status: dynamic
)
[
// Normal sign-in from known device and location (baseline)
datetime(2026-03-08T14:10:00Z),
"u1291@contoso.onmicrosoft.com",
"9214593d-65f8-43fd-c4a5-f80aty691141",
"Microsoft Teams",
"Browser",
"singleFactorAuthentication",
"success",
"low",
"none",
"noRiskDetected",
dynamic({"countryOrRegion":"US","state":"Texas","city":"Dallas"}),
"20.81.45.10",
dynamic({"deviceId":"device-jm-001","operatingSystem":"Windows 11","browser":"Edge","isCompliant":true,"isManaged":true}),
dynamic({"errorCode":0,"failureReason":"None"}),
// Identity drift: new device and new geographic location
datetime(2026-03-08T14:18:00Z),
"u1291@contoso.onmicrosoft.com",
"9214593d-65f8-43fd-c4a5-f80aty691141",
"Azure Portal",
"Browser",
"multiFactorAuthentication",
"success",
"medium",
"atRisk",
"newDevice",
dynamic({"countryOrRegion":"Germany","state":"Berlin","city":"Berlin"}),
"91.198.174.22",
dynamic({"deviceId":"unknown","operatingSystem":"Linux","browser":"Chrome","isCompliant":false,"isManaged":false}),
dynamic({"errorCode":0,"failureReason":"MFA required due to unfamiliar sign-in"}),
// Identity drift: impossible travel detected
datetime(2026-03-08T14:21:00Z),
"u3415@contoso.onmicrosoft.com",
"8214593d-75e8-4efd-c4a5-f80aty691131",
"Microsoft 365",
"Browser",
"multiFactorAuthentication",
"success",
"high",
"confirmedCompromised",
"impossibleTravel",
dynamic({"countryOrRegion":"China","state":"Beijing","city":"Beijing"}),
"101.226.4.6",
dynamic({"deviceId":"unknown","operatingSystem":"macOS","browser":"Safari","isCompliant":false,"isManaged":false}),
dynamic({"errorCode":0,"failureReason":"Impossible travel detected"}),
// Identity drift: sign-in blocked by Conditional Access
datetime(2026-03-08T14:25:00Z),
"u1291@contoso.onmicrosoft.com",
"3214593d-65f8-53fd-c4a5-c80aty691441",
"Azure DevOps",
"Browser",
"singleFactorAuthentication",
"failure",
"high",
"atRisk",
"anomalousToken",
dynamic({"countryOrRegion":"Russia","state":"Moscow","city":"Moscow"}),
"185.199.108.153",
dynamic({"deviceId":"unknown","operatingSystem":"Windows 10","browser":"Firefox","isCompliant":false,"isManaged":false}),
dynamic({"errorCode":53003,"failureReason":"Access blocked by Conditional Access policy"})
];
これで、Data Lake に IdentityDrift、Microsoft Entra ID、Microsoft Defenderからのサンプル テレメトリが設定されました。 このデータを使用して、セキュリティ Copilot エージェントをテストおよび開発します。
「Visual Studio Codeの MCP ツールを使用して Sentinel MCP サーバー ツールを調べ、プロンプトを使用してデータにクエリを実行する」を参照してください。
Security Copilot Agent for IdentityDrift のユース ケースの構築に進む前に、次のプロンプトで MCP サーバーを調べて、この手順で取り込まれたサンプル データに対してクエリを実行し、Sentinel MCP を使用して Sentinel データ レイクからデータを照会する方法を学習します。