0

我们尝试创建一个 AAD 服务主体,用于从 Log Analytics 工作区中检索数据。

  • 我们的 AAD 区域位于Germany
  • Log Analytics 位于North Europe

在尝试创建 API 权限时,提到了 API 本身的地址westus2.api.loganalytics.io(美国西部地区),这不利于我们公司的数据隐私。

这个默认且不可编辑的设置有什么原因吗?有什么办法可以克服吗?

在此处输入图像描述

4

1 回答 1

0

好吧,如果是这样,您可以获取 ARM API 端点的令牌,然后调用 ARM API。

这样,无需为您的 AD App 添加 API 权限,只需确保您的 AD App 具有 RBAC 角色,例如ContributorLog Analytics ReaderAccess control (IAM)您的工作区中,如果没有,请按照此文档添加它。

然后使用客户端凭证流获取令牌。

POST /YOUR_AAD_TENANT/oauth2/token HTTP/1.1
Host: https://login.microsoftonline.com
Content-Type: application/x-www-form-urlencoded

grant_type=client_credentials
&client_id=YOUR_CLIENT_ID
&redirect_uri=YOUR_REDIRECT_URI
&resource=https://management.azure.com/
&client_secret=YOUR_CLIENT_SECRET

获取令牌后,使用它调用如下示例的 api。

GET https://management.azure.com/subscriptions/6c3ac85e-59d5-4e5d-90eb-27979f57cb16/resourceGroups/demo/providers/Microsoft.OperationalInsights/workspaces/demo-ws/api/query

Authorization: Bearer <access_token>
Prefer: response-v1=true

{
    "query": "AzureActivity | limit 10"
}

有关更多详细信息,请参阅此链接

于 2020-11-13T01:43:43.253 回答