Azure Unity Catalog中AD组权限管理问题求助
解决Azure AD组在Unity Catalog中无法被识别为主体的权限授予问题
排查步骤与解决方案:
检查AD组是否已同步到Databricks工作区
先确认目标AD组是否已经同步到你使用的Databricks工作区,执行以下SQL查询验证:SELECT * FROM system.information_schema.principals WHERE principal_name = 'AzUser-DataHub-SAPupportAnalyst';如果查询无结果,说明组未同步:
- 检查Azure AD与Databricks的身份同步配置,确认同步范围包含该AD组;
- 等待同步完成(通常需要数分钟到半小时),或手动在Databricks工作区的身份管理页面添加该组。
确认主体名称格式与拼写
- 检查组名拼写是否正确:你的组名是
AzUser-DataHub-SAPupportAnalyst,注意SAPupport是否应为Support,笔误是常见原因; - Unity Catalog识别Azure AD组时,可直接使用组的显示名称,或采用
AzureAD:<组名称>/AzureAD:<组对象ID>的格式尝试,比如:GRANT SELECT ON default.department TO `AzureAD:AzUser-DataHub-SAPupportAnalyst`;
- 检查组名拼写是否正确:你的组名是
验证组是否已被Unity Catalog识别
执行以下SQL查看Unity Catalog中已注册的所有主体:SHOW PRINCIPALS;如果目标组不在列表中,需手动注册该AD组到Unity Catalog:
CREATE PRINCIPAL AzureAD('AzUser-DataHub-SAPupportAnalyst');若显示名称无法识别,改用AD组的对象ID尝试:
CREATE PRINCIPAL AzureAD('<AD组的对象ID>');确认权限授予的作用域与执行权限
- 确保
default.department是Unity Catalog管理的表/视图,而非工作区级别(Workspace)的对象; - 执行GRANT语句的用户需具备
CATALOG ADMIN、SCHEMA ADMIN权限,或是该表的所有者(OWNER)。
- 确保
内容的提问来源于stack exchange,提问作者nick leeson
相关产品推荐
相关产品推荐

