我在 Power BI 中使用以下 API 调用从 365 访问高级狩猎数据。
https://api.securitycenter.windows.com/api/advancedqueries
使用此 API 适用于 Power BI 中的某些表,但不适用于其他表。
例如:
DeviceEvents | limit 10
将带回 10 个结果。
AlertInfo | limit 10
返回 400 错误请求。
上述两个查询都可以在 365 本身的高级搜索工具中成功运行。
我发现高级狩猎模式中的许多其他表也是如此,例如 IdentityInfo 和 EmailEvents 等等。
我有什么明显的遗漏吗?我想也许是退回的物品数量,因此限制为 10,但这也没有解决问题。
这是围绕 Power BI 特定查询方法的Microsoft 文档示例,但没有帮助解决问题。
let
AdvancedHuntingQuery = "DeviceEvents | where ActionType contains 'Anti' | limit 20",
HuntingUrl = "https://api.securitycenter.microsoft.com/api/advancedqueries",
Response = Json.Document(Web.Contents(HuntingUrl, [Query=[key=AdvancedHuntingQuery]])),
TypeMap = #table(
{ "Type", "PowerBiType" },
{
{ "Double", Double.Type },
{ "Int64", Int64.Type },
{ "Int32", Int32.Type },
{ "Int16", Int16.Type },
{ "UInt64", Number.Type },
{ "UInt32", Number.Type },
{ "UInt16", Number.Type },
{ "Byte", Byte.Type },
{ "Single", Single.Type },
{ "Decimal", Decimal.Type },
{ "TimeSpan", Duration.Type },
{ "DateTime", DateTimeZone.Type },
{ "String", Text.Type },
{ "Boolean", Logical.Type },
{ "SByte", Logical.Type },
{ "Guid", Text.Type }
}),
Schema = Table.FromRecords(Response[Schema]),
TypedSchema = Table.Join(Table.SelectColumns(Schema, {"Name", "Type"}), {"Type"}, TypeMap , {"Type"}),
Results = Response[Results],
Rows = Table.FromRecords(Results, Schema[Name]),
Table = Table.TransformColumnTypes(Rows, Table.ToList(TypedSchema, (c) => {c{0}, c{2}}))
in Table
谢谢