注册应用以请求授权令牌并使用 API

若要访问 Azure REST API(如 Log Analytics API)或发送自定义指标,可以基于客户端 ID 和机密生成授权令牌。 然后,令牌将传递到 REST API 请求中。 本文介绍如何注册客户端应用并创建客户端密码,以便生成令牌。

注册应用程序

使用 Azure 门户、Azure CLI 或 PowerShell 创建服务主体并注册应用。

  1. 若要注册应用,请打开 Azure 门户中的“Active Directory 概述”页。

  2. 从侧栏中选择 “应用注册 ”。 显示Microsoft Entra 概述页的屏幕截图。

  3. 选择“新建注册

  4. 在“注册应用程序”页上,输入应用程序的名称。

  5. 选择注册

  6. 在应用的概述页上,选择 “证书和机密”

  7. 记下 应用程序(客户端)ID。 它用于获取令牌的 HTTP 请求中。 显示Microsoft Entra ID 中的应用注册概述页的屏幕截图。

  8. “客户端机密”选项卡中,选择“新建客户端密码

  9. 输入说明并选择添加这是一个显示“添加客户端机密”页面的截图。

  10. 复制并保存客户端密码值。

    注释

    客户端密码值只能在创建后立即查看。 请确保在离开该页面之前保存该机密。

    显示客户端机密页的屏幕截图。

后续步骤

需使用访问控制 (IAM) 将应用分配到你想要访问的资源的角色,才能使用应用、客户端 ID 和机密生成令牌。 角色将取决于要使用的资源类型和 API。
例如,

  • 若要授予您的应用从 Log Analytics 工作区读取的权限,请使用 Log Analytics 工作区的访问控制(IAM)将其添加为 读取者 角色的成员。 有关详细信息,请参阅 访问 API

  • 若要授予向资源发送自定义指标的权限,请使用资源的访问控制(IAM)将应用添加为 监视指标发布者 角色的成员。 有关详细信息,请参阅 使用 REST API 将指标发送到 Azure Monitor 指标数据库

有关详细信息,请参阅 使用 Azure 门户分配 Azure 角色

分配角色后,可以使用应用、客户端 ID 和客户端密码生成持有者令牌来访问 REST API。

注释

使用 Microsoft Entra 身份验证时,Azure Application Insights REST API 可能需要长达 60 分钟才能识别新的基于角色的访问控制(RBAC)权限。 虽然权限正在传播,但 REST API 调用可能会失败,错误代码为 403。