托管标识概述

Microsoft Entra ID 的托管标识让你的群集可以访问其他受 Microsoft Entra 保护的资源,如 Azure 存储。 标识由 Azure 平台托管,无需预配或轮换任何机密。

托管标识类型

可授予 Azure 数据资源管理器群集两种类型的标识:

  • 系统分配的标识:绑定到你的群集,在资源被删除时删除。 一个群集只能有一个系统分配的标识。

  • 用户分配的标识:可以分配给群集的独立 Azure 资源。 一个群集可具有多个用户分配的标识。

使用托管标识进行身份验证

单租户 Microsoft Entra 资源只能使用托管标识与同一租户中的资源通信。 此限制限制了在某些身份验证方案中使用托管标识。 例如,不能使用 Azure 数据资源管理器托管标识访问位于不同租户的事件中心。 在这种情况下,请使用基于帐户密钥的身份验证。

Azure 数据资源管理器支持多租户,这意味着你可以从不同租户授予对托管标识的访问权限。 为此,请分配相关的安全角色。 分配角色时,请参考托管标识,如引用安全主体中所述。

若要使用托管标识进行身份验证,请执行以下步骤:

  1. 为群集配置托管标识
  2. 配置托管标识策略
  3. 在支持的工作流中使用托管标识

为群集配置托管标识

群集需要具有代表给定托管标识行事的权限。 可以为系统分配的托管标识和用户分配的托管标识指定此分配。 有关说明,请参阅为 Azure 数据资源管理器群集配置托管标识

配置托管标识策略

若要使用托管标识,需要配置托管标识策略以允许此标识。 有关说明,请参阅托管标识策略

托管标识策略管理命令包括:

在支持的工作流中使用托管标识

将托管标识分配到群集并配置相关的托管标识策略用法后,可以在以下工作流中开始使用托管标识身份验证:

  • 外部表:使用托管标识身份验证创建外部表。 将身份验证作为连接字符串的一部分进行说明。 有关示例,请参阅存储连接字符串。 有关将外部表与托管标识身份验证一起使用的说明,请参阅使用托管标识对外部表进行身份验证

  • 连续导出:代表托管标识运行连续导出。 如果外部表使用模拟身份验证,或者导出查询引用其他数据库中的表,则需要托管标识。 若要使用托管标识,请在 create-or-alter 命令中给定的可选参数中添加托管标识标识符。 有关分步指南,请参阅使用托管标识进行身份验证以实现连续导出

  • 事件中心原生引入:在事件中心原生引入中使用托管标识。 有关详细信息,请参阅将数据从事件中心引入 Azure 数据资源管理器

  • Python 插件:使用托管标识对 python 插件中使用的外部项目的存储帐户进行身份验证。 请注意,需要在群集级别托管标识策略上定义 SandboxArtifacts 用法。 有关详细信息,请参阅 Python 插件

  • 基于 SDK 的引入:对 Blob 进行排队以从你自己的存储帐户引入时,可使用托管标识来替代共享访问签名 (SAS) 和共享密钥身份验证方法。 有关详细信息,请参阅使用托管标识身份验证对 Blob 进行排队以供引入

  • 从存储引入:使用托管标识身份验证将数据从位于云存储中的文件引入目标表。 有关详细信息,请参阅从存储引入

  • Sql 请求插件:使用 sql_request 或 cosmosdb_request 插件时通过托管标识向外部数据库进行身份验证。