Microsoft Advanced Hunting Query API работает для некоторых таблиц, но не для других в Power BI.

Я использую следующий вызов API в Power BI для доступа к данным Advanced Hunting из 365.

https://api.securitycenter.windows.com/api/advancedqueries

Использование этого API работает с некоторыми таблицами, но не работает с другими в Power BI.

Например:

DeviceEvents | limit 10 вернет 10 результатов.

AlertInfo | limit 10 возвращает 400 неверных запросов.

Оба вышеуказанных запроса успешно работают в расширенном инструменте охоты в самом 365.

Я обнаружил, что то же самое и со многими другими таблицами в схеме расширеннойохоты , такими как IdentityInfo и EmailEvents, чтобы назвать еще несколько.

Есть ли что-то очевидное, что мне не хватает? Я подумал, что, возможно, это количество возвращаемых товаров, отсюда и ограничение в 10, но это тоже не решило проблему.

Это пример документации Microsoft по конкретным методам запросов Power BI, но он не помог решить проблему.

          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

Спасибо

1 ответ

Я связался с Microsoft, и они подтвердили, что через API, указанный в документации, ссылка на которую есть в моем посте, доступны только некоторые таблицы. Они предложили обходной путь, который заключался в использовании немного другого API, с которым я не сталкивался в своих путешествиях. Выдержка из ответа ниже:

Поэтому я изменил URL-адрес расширенного поиска с https://api.securitycenter.microsoft.com/api/advancedqueries на https://api.security.microsoft.com/api/advancedhunting в расширенном редакторе Power BI. (Для этого может потребоваться повторный вход из Power BI в учетной записи организации)

Я могу подтвердить, что использование этого второго API в Power BI дало мне доступ к дополнительным таблицам, которые мне были нужны.

Другие вопросы по тегам