Azure 逻辑应用程序 - 如何在订阅之外使用它

问题描述 投票:0回答:2

我创建了一个逻辑应用程序(消耗)来使用 API 查询 Microsoft 资源图以获取某些打开的警报。该应用程序工作正常,但仅列出该订阅中的结果。我需要所有订阅的结果 - 请帮助我了解如何更改我的逻辑应用程序以更改范围而不将其部署在所有订阅中?

使用连接器列出来自 ARM 的所有订阅,但没有成功。

作为新手,请引导我正确的做法

期望所有订阅的结果,而不是部署逻辑应用的唯一订阅的结果。

azure azure-resource-graph
2个回答
0
投票

您可以使用rest api列出所有订阅,并使用另一个rest api您可以查询逻辑应用程序中打开的警报。在此之前,您需要设置 AAD 应用程序进行身份验证并获取不记名令牌。请参阅此文档以获取令牌。

  • 创建逻辑应用程序如下所示, enter image description here
  • 这里我在逻辑应用程序中使用了请求触发器。接下来采取 http 操作以使用 AAD 应用程序获取令牌。

enter image description here

  • 采用另一个 http 操作和方法作为 Get,其 URL 为“https://management.azure.com/subscriptions?api-version=2019-06-01”。将上一步获得的 token 传递到 Header 中,如下所示, enter image description here

    这将提供所有订阅的列表。

  • 使用 for every 循环迭代每个订阅 ID,并使用 url "https://management.azure.com/subscriptions/{subscriptionId}/providers/Microsoft.Insights/activityLogAlerts?api-version= 获取该特定订阅的警报2020年10月1日 enter image description here

    这将为每个订阅提供警报。

  • 运行逻辑应用程序并能够获取每个订阅的警报, enter image description here

HTTP 输出:

enter image description here enter image description here

HTTP2 的输出:

enter image description here

参考链接 SOMS 文档。


0
投票

授予逻辑应用阅读器访问其他订阅的权限

© www.soinside.com 2019 - 2024. All rights reserved.