托管标识概述
Microsoft Entra ID 的托管标识让你的群集可以访问其他受 Microsoft Entra 保护的资源,如 Azure 存储。 标识由 Azure 平台托管,无需预配或轮换任何机密。
托管标识类型
可授予 Azure 数据资源管理器群集两种类型的标识:
系统分配的标识:绑定到你的群集,在资源被删除时删除。 一个群集只能有一个系统分配的标识。
用户分配的标识:可以分配给群集的独立 Azure 资源。 一个群集可具有多个用户分配的标识。
使用托管标识进行身份验证
单租户 Microsoft Entra 资源只能使用托管标识与同一租户中的资源通信。 此限制限制了在某些身份验证方案中使用托管标识。 例如,不能使用 Azure 数据资源管理器托管标识访问位于不同租户的事件中心。 在这种情况下,请使用基于帐户密钥的身份验证。
Azure 数据资源管理器支持多租户,这意味着你可以从不同租户授予对托管标识的访问权限。 为此,请分配相关的安全角色。 分配角色时,请参考托管标识,如引用安全主体中所述。
若要使用托管标识进行身份验证,请执行以下步骤:
为群集配置托管标识
群集需要具有代表给定托管标识行事的权限。 可以为系统分配的托管标识和用户分配的托管标识指定此分配。 有关说明,请参阅为 Azure 数据资源管理器群集配置托管标识。
配置托管标识策略
若要使用托管标识,需要配置托管标识策略以允许此标识。 有关说明,请参阅托管标识策略。
托管标识策略管理命令包括:
- .alter policy managed_identity
- .alter-merge policy managed_identity
- .delete policy managed_identity
- .show policy managed_identity
在支持的工作流中使用托管标识
将托管标识分配到群集并配置相关的托管标识策略用法后,可以在以下工作流中开始使用托管标识身份验证:
外部表:使用托管标识身份验证创建外部表。 将身份验证作为连接字符串的一部分进行说明。 有关示例,请参阅存储连接字符串。 有关将外部表与托管标识身份验证一起使用的说明,请参阅使用托管标识对外部表进行身份验证。
连续导出:代表托管标识运行连续导出。 如果外部表使用模拟身份验证,或者导出查询引用其他数据库中的表,则需要托管标识。 若要使用托管标识,请在
create-or-alter
命令中给定的可选参数中添加托管标识标识符。 有关分步指南,请参阅使用托管标识进行身份验证以实现连续导出。事件中心原生引入:在事件中心原生引入中使用托管标识。 有关详细信息,请参阅将数据从事件中心引入 Azure 数据资源管理器。
Python 插件:使用托管标识对 python 插件中使用的外部项目的存储帐户进行身份验证。 请注意,需要在群集级别托管标识策略上定义
SandboxArtifacts
用法。 有关详细信息,请参阅 Python 插件。基于 SDK 的引入:对 Blob 进行排队以从你自己的存储帐户引入时,可使用托管标识来替代共享访问签名 (SAS) 和共享密钥身份验证方法。 有关详细信息,请参阅使用托管标识身份验证对 Blob 进行排队以供引入。
从存储引入:使用托管标识身份验证将数据从位于云存储中的文件引入目标表。 有关详细信息,请参阅从存储引入。
Sql 请求插件:使用 sql_request 或 cosmosdb_request 插件时通过托管标识向外部数据库进行身份验证。