You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DataBricks Unity Catalog创建表失败:SAS令牌获取权限被拒

排查Databricks Unity Catalog托管Delta表SAS令牌获取失败问题

可能的配置疏漏点及解决步骤

1. 检查访问连接器的权限范围配置

创建Azure Databricks访问连接器时,需确保其权限范围设置为存储账户级别,而非仅容器级别。如果权限范围仅限定特定容器,会导致UC访问存储账户内元数据路径时权限不足。

  • 操作:进入Azure门户的访问连接器页面,查看「权限范围」设置,确认选择目标存储账户而非单个容器。

2. 验证托管标识的角色分配有效性

即便已分配Storage Blob Data Contributor角色,Azure RBAC可能存在最长15分钟的生效延迟,或分配范围有误:

  • 确认角色直接分配给托管标识,而非通过组间接分配(避免组权限同步延迟)。
  • 检查角色分配范围:确保在存储账户或容器级别分配,而非更窄的子文件夹范围。

3. 核对元存储的根存储路径

创建Unity Catalog元存储时,根存储路径需指向ADLS Gen2容器根目录(格式为abfss://<container-name>@<storage-account-name>.dfs.core.windows.net/),路径错误会导致UC尝试访问未授权路径:

  • 进入Databricks控制台的Unity Catalog元存储设置,确认根存储路径配置正确。

4. 确认集群访问模式与UC权限适配

使用「single user」模式集群时,需验证集群关联用户(即你本人)的UC权限:

  • 除工作区Admin权限外,确认你在quickstart_catalog_mauromi目录和quickstart_schema_mauromi schema上拥有CREATE TABLE权限(即便你是schema所有者,也需验证权限继承是否正常)。
  • 可执行以下SQL检查权限:
SHOW GRANTS ON SCHEMA quickstart_catalog_mauromi.quickstart_schema_mauromi;

5. 检查存储账户的网络配置

若存储账户开启防火墙,需确保允许Databricks访问:

  • 进入Azure存储账户的「网络」设置,确认勾选「允许受信任的Microsoft服务访问此存储账户」。
  • 若使用VNet注入的Databricks工作区,需确保存储账户防火墙允许VNet内流量。

6. 验证Delta表路径的权限继承

虽然容器已配置Storage Blob Data Contributor角色,但自动创建的Delta表文件夹可能存在权限继承中断的情况:

  • 进入Azure存储容器,查看自动生成的/data/.../_delta_log路径,确认其权限继承了容器设置,托管标识对该路径拥有读写权限。

内容的提问来源于stack exchange,提问作者Mauro Minella

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 14:50:31