你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
开发人员面临的一个常见挑战是管理用于保护服务之间通信的机密、凭据、证书和密钥。 托管标识使开发人员无需管理这些凭据。
虽然开发人员可以安全地将机密存储在 Azure 密钥保管库 中,但服务需要一种方法来访问 Azure 密钥保管库。 托管标识在 Microsoft Entra ID 中提供了一个自动托管标识,供应用程序在连接到支持 Microsoft Entra 身份验证的资源时使用。 应用程序可以使用托管标识来获取 Microsoft Entra 令牌,无需管理任何凭据。
下面是使用托管标识的一些好处:
- 你无需管理凭据。 无法访问凭据。
- 可使用托管标识对支持 Microsoft Entra 身份验证的任何资源(包括你自己的应用程序)进行身份验证。
- 无需额外费用即可使用托管标识。
Azure 中可用的托管标识类型
存在两种类型的托管标识:
系统分配:某些 Azure 资源类型(例如 Azure Database for PostgreSQL)允许直接在资源上启用托管标识。 它们称为系统分配的托管标识。 启用系统分配的托管标识时:
Microsoft Entra ID 为标识创建特殊类型的服务主体。 该服务主体与该 Azure 资源的生命周期相关联。 删除 Azure 资源时,Azure 会自动为你删除服务主体。
按照设计,只有该 Azure 资源可以使用此标识从 Microsoft Entra ID 请求令牌。
可以授权与托管标识关联的服务主体有权访问一个或多个服务。
分配给与托管标识关联的服务主体的名称,始终与为其创建的 Azure 资源名称相同。
用户分配:某些Azure资源类型还支持分配作为独立资源创建的托管标识。 这些标识的生命周期独立于它们被分配给的资源的生命周期。 可以将其分配给多个资源。 启用用户分配的托管标识时:
Microsoft Entra ID 为标识创建特殊类型的服务主体。 你可以将服务主体与使用它的资源分开管理。
多个资源可以利用用户分配的标识。
授权托管标识对一个或多个服务的访问权限。
Azure Database for PostgreSQL 中的托管标识的使用
Azure Database for PostgreSQL 为以下项使用系统分配的托管标识:
-
azure_storage 扩展,当你将其配置为通过
managed-identity身份验证类型访问存储帐户时。 有关详细信息,请参阅如何配置 azure_storage 扩展以通过 Microsoft Entra ID 使用授权。 - Azure Database for PostgreSQL 的 Microsoft Fabric 镜像数据库(预览版)使用系统分配的托管标识的凭据对灵活服务器发送到 Microsoft Fabric 中的 Azure DataLake 服务的请求进行签名,以镜像指定的数据库。
将为 Azure Database for PostgreSQL 灵活服务器配置的用户分配的托管标识用于: