提问人:Jerry 提问时间:11/17/2023 更新时间:11/17/2023 访问量:23
Azure 中的查询失败
Query Fails in Azure
问:
我想生成一份报告,说明如何在租户上应用敏感度标签。 我希望报告由部门提供,但为此我需要加入 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
现在我面临的问题
- 我无法将信息临时存储在结果表中。我不知道这是语法错误还是我遗漏了什么。
- 我想运行查询的后半部分,假设是 30 天的时间范围,但由于我的前半部分查询是 90 天,因此它不会让我在后半部分将其更改为 30 天,因为我认为这两列都称为 TimeGenerated。
答: 暂无答案
评论
on $left.UserId == $right.AccountUPN or $left.UserId == $right.MailAddress
这是正确的吗?不支持加入操作员时or