使用 Microsoft Entra ID 访问 Azure 应用程序配置
Azure 应用程序配置支持使用 Microsoft Entra ID 授权向应用程序配置存储区发出请求。 借助 Microsoft Entra ID,可以利用 Azure 基于角色的访问控制 (Azure RBAC) 向安全主体(可以是用户主体、 托管标识或服务主体)授予权限。
概述
使用 Microsoft Entra ID 访问应用程序配置存储区涉及两个步骤:
身份验证:从应用程序配置的 Microsoft Entra ID 获取安全主体的令牌。 若要详细了解,请参阅应用程序配置中的 Microsoft Entra 身份验证。
授权:将令牌作为请求的一部分传递给应用程序配置存储区。 若要授权访问指定的应用程序配置存储区,必须提前为安全主体分配相应的角色。 若要详细了解,请参阅应用程序配置中的 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
时为其分配所需的角色。
分配应用程序配置数据角色
无论使用哪种凭据,都必须为其分配适当的角色,然后才能访问应用程序配置存储区。 如果应用程序只需要从应用程序配置存储区中读取数据,请为其分配应用程序配置数据读者角色。 如果应用程序还需要将数据写入应用程序配置存储区,请为其分配应用程序配置数据所有者角色。
按照以下步骤将应用程序配置数据角色分配给凭据。
在 Azure 门户中,导航到应用程序配置存储区,然后选择“访问控制 (IAM)”。
选择“添加”->“添加角色分配”。
如果未分配角色的权限,则“添加角色分配”选项将会禁用。 只有拥有所有者或用户访问管理员角色的用户才能进行角色分配。
在“角色”选项卡上,选择“应用程序配置数据读者”角色(或适当的其他应用程序配置角色),然后选择“下一步”。
在“成员”选项卡上,按照向导选择要向其授予访问权限的凭据,然后选择“下一步”。
最终,在“查看 + 分配”选项卡上,选择“查看 + 分配”,以分配角色。
后续步骤
了解如何使用托管标识访问应用程序配置存储区。