Azure 中的查询失败

Query Fails in Azure

提问人:Jerry 提问时间:11/17/2023 更新时间:11/17/2023 访问量:23

问:

我想生成一份报告,说明如何在租户上应用敏感度标签。 我希望报告由部门提供,但为此我需要加入 2 个表。因为,存储用户信息的表 IdentityInfo 不是静态的,可以有多个重复条目。包含有关敏感度标签的信息的表仅包含用户 ID。

UserId 可以具有用户的 UPN 或邮件地址。因此,我必须使用联接来找出获取此数据的方法。

let resulttable = IdentityInfo
| where TimeGenerated > ago(90d)
| where UserType == "Member"
| where MailAddress has_any ("xyz.com","subdomain.xyz.com")
| where MailAddress !startswith ("QWERTY") or  AccountUPN !startswith "QWERTY"
| distinct MailAddress,AccountUPN,Department;

resulttable 
| project MailAddress,AccountUPN,Department
| datatable(MailAddress: string, AccountUPN:string,Department:string)

MicrosoftPurviewInformationProtection
| join kind = inner (resulttable) on $left.UserId == $right.AccountUPN or $left.UserId == $right.MailAddress 
| where Operation in~ ("SensitivityLabelApplied",
    "FileSensitivityLabelApplied",
    "FileSensitivityLabelChanged",
    "SensitivityLabelUpdated",
    "SiteSensitivityLabelApplied",
    "SiteSensitivityLabelChanged")
| extend ProcessName= tostring(Common.ProcessName)
| extend Apps = strcat(Application,ProcessName)
| project Id,TimeGenerated,SensitivityLabelId,UserId,Apps,Workload,Operation,Department


现在我面临的问题

  1. 我无法将信息临时存储在结果表中。我不知道这是语法错误还是我遗漏了什么。
  2. 我想运行查询的后半部分,假设是 30 天的时间范围,但由于我的前半部分查询是 90 天,因此它不会让我在后半部分将其更改为 30 天,因为我认为这两列都称为 TimeGenerated。
azure reporting-services kql azure-log-analytics

评论

0赞 Aswin 11/17/2023
on $left.UserId == $right.AccountUPN or $left.UserId == $right.MailAddress这是正确的吗?不支持加入操作员时or
0赞 Jerry 11/17/2023
我该如何纠正这个问题?
0赞 Aswin 11/17/2023
正如您在上一个问题中所做的那样,您可以合并同一个表两次,然后将它们合并。

答: 暂无答案