Compartir a través de

使用 Microsoft Entra ID 访问 Azure 应用程序配置

Azure 应用程序配置支持使用 Microsoft Entra ID 授权向应用程序配置存储区发出请求。 借助 Microsoft Entra ID,可以利用 Azure 基于角色的访问控制 (Azure RBAC) 向安全主体(可以是用户主体、 托管标识服务主体)授予权限。

概述

使用 Microsoft Entra ID 访问应用程序配置存储区涉及两个步骤:

  1. 身份验证:从应用程序配置的 Microsoft Entra ID 获取安全主体的令牌。 若要详细了解,请参阅应用程序配置中的 Microsoft Entra 身份验证

  2. 授权:将令牌作为请求的一部分传递给应用程序配置存储区。 若要授权访问指定的应用程序配置存储区,必须提前为安全主体分配相应的角色。 若要详细了解,请参阅应用程序配置中的 Microsoft Entra 授权

Azure 应用程序配置的 Azure 内置角色

Azure 提供下列内置角色,用于使用 Microsoft Entra ID 授权对应用程序配置的访问权限:

数据平面访问

数据平面操作的请求将发送到应用程序配置存储区的终结点。 这些请求与应用程序配置数据相关。

  • 应用程序配置数据所有者:使用此角色授予对应用程序配置数据的读取、写入和删除访问权限。 此角色不会授予对应用配置资源的访问权限。
  • 应用程序配置数据读取者:使用此角色授予对应用程序配置数据的读取访问权限。 此角色不会授予对应用配置资源的访问权限。

控制平面访问权限

控制平面操作的所有请求都将发送到 Azure 资源管理器 URL。 这些请求与应用程序配置资源相关。

  • 应用程序配置参与者:使用此角色仅管理应用程序配置资源。 此角色不授予管理其他 Azure 资源的访问权限。 它负责授予对资源的访问密钥的访问权限。 虽然可以使用访问密钥访问应用程序配置数据,但此角色不会使用 Microsoft Entra ID 授予对数据的直接访问权限。 它授予恢复已删除应用程序配置资源的访问权限,但不授予清除这些资源的访问权限。 若要清除已删除应用程序配置资源,请使用参与者角色。
  • 应用程序配置读者:使用此角色仅读取应用程序配置资源。 此角色不授予读取其他 Azure 资源的访问权限。 它不会授予对资源的访问密钥的访问权限,也不会授予对应用程序配置中存储的数据的访问权限。
  • 参与者所有者:使用此角色可管理应用程序配置资源,同时还能够管理其他 Azure 资源。 此角色是特权管理员角色。 它负责授予对资源的访问密钥的访问权限。 虽然可以使用访问密钥访问应用程序配置数据,但此角色不会使用 Microsoft Entra ID 授予对数据的直接访问权限。
  • 读者:使用此角色可读取应用程序配置资源,同时能够读取其他 Azure 资源。 此角色不会授予对资源的访问密钥的访问权限,也不会授予对存储在应用配置中的数据的访问权限。

注意

为不同标识分配角色后,在使用此标识访问存储在应用配置中的数据之前,该权限的传播时长上限为 15 分钟。

使用令牌凭据进行身份验证

为了使应用程序能够使用 Microsoft Entra ID 进行身份验证,Azure 标识库支持使用各种令牌凭据进行 Microsoft Entra ID 身份验证。 例如,在 Visual Studio 中开发应用程序时,可以选择 Visual Studio 凭据;应用程序在 Kubernetes 上运行时,可以选择工作负荷标识凭据;或者,在 Azure Functions 等 Azure 服务中部署应用程序时,可以选择托管标识凭据。

使用 DefaultAzureCredential

DefaultAzureCredential 是预配置的令牌凭据链,可自动尝试最常见的身份验证方法的有序序列。 使用 DefaultAzureCredential,可以在本地开发和 Azure 环境中保留相同的代码。 但是,必须知道每个环境中正在使用哪个凭据,因为需要授予适当的角色,授权才能正常工作。 例如,期望 DefaultAzureCredential 在本地开发期间回退到用户标识时,授权自己的帐户。 同样,在 Azure Functions 中启用托管标识,并在函数应用在 Azure 中运行时预期 DefaultAzureCredential 会回退到 ManagedIdentityCredential 时为其分配所需的角色。

分配应用程序配置数据角色

无论使用哪种凭据,都必须为其分配适当的角色,然后才能访问应用程序配置存储区。 如果应用程序只需要从应用程序配置存储区中读取数据,请为其分配应用程序配置数据读者角色。 如果应用程序还需要将数据写入应用程序配置存储区,请为其分配应用程序配置数据所有者角色。

按照以下步骤将应用程序配置数据角色分配给凭据。

  1. 在 Azure 门户中,导航到应用程序配置存储区,然后选择“访问控制 (IAM)”

  2. 选择“添加”->“添加角色分配”。

    如果未分配角色的权限,则“添加角色分配”选项将会禁用。 只有拥有所有者用户访问管理员角色的用户才能进行角色分配。

  3. 在“角色”选项卡上,选择“应用程序配置数据读者”角色(或适当的其他应用程序配置角色),然后选择“下一步”

  4. 在“成员”选项卡上,按照向导选择要向其授予访问权限的凭据,然后选择“下一步”

  5. 最终,在“查看 + 分配”选项卡上,选择“查看 + 分配”,以分配角色。

后续步骤

了解如何使用托管标识访问应用程序配置存储区