托管标识

适用于: Azure Database for PostgreSQL 灵活型服务器

开发人员面临的一个常见挑战是管理用于保护服务之间通信的机密、凭据、证书和密钥。 托管标识使开发人员无需管理这些凭据。

虽然开发人员可以安全地将机密存储在 Azure Key Vault 中,但服务需要一种方法来访问 Azure Key Vault。 托管身份提供了一个在 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 中为某个特定身份创建了一种特殊类型的服务主体。 该服务主体与使用它的资源是分开管理的。
    • 多个资源可以利用用户分配的标识。
    • 你授权托管标识访问一个或多个服务。