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

无法在Azure Synapse专用池访问数据湖文件的授权问题求助

解决Azure Synapse专用SQL池/Spark池访问数据湖未授权问题

排查与修复步骤

1. 数据湖存储权限配置检查

  • 确认Synapse工作区托管标识在数据湖存储的目标容器/文件夹上拥有必要权限:
    • 专用SQL池:需Storage Blob Data Contributor或Storage Blob Data Reader权限,且权限要直接分配到容器/目标文件夹(避免仅依赖继承导致的权限缺失)。
    • Spark池:同样需要上述权限,若存储账户开启防火墙,需在存储账户的「防火墙和虚拟网络」设置中,允许Synapse工作区的IP或信任服务访问。
  • 操作路径:Azure门户 → 目标存储账户 → 访问控制(IAM) → 添加角色分配,选择对应角色,指定Synapse工作区托管标识为成员。

2. 专用SQL池访问配置验证

若通过外部表访问,确保外部数据源配置正确:

CREATE EXTERNAL DATA SOURCE YourDataSource
WITH (
    LOCATION = 'abfss://<container>@<storageaccount>.dfs.core.windows.net/',
    TYPE = HADOOP,
    CREDENTIAL = (IDENTITY = 'Managed Identity') -- 使用托管标识无需存储密钥凭据
);
  • 检查外部表的LOCATION路径是否精准指向Parquet文件所在的文件夹。

3. Spark池访问配置检查

  • 在Spark notebook中访问数据湖时,确保使用Synapse托管标识而非个人凭据:
    df = spark.read.parquet("abfss://<container>@<storageaccount>.dfs.core.windows.net/path/to/file.parquet")
    
  • 若存储账户开启分层命名空间(HNS),确认文件夹权限未覆盖容器级权限。
  • 确认Synapse工作区已添加到存储账户的「受信任服务列表」(存储账户 → 防火墙和虚拟网络 → 允许受信任的Microsoft服务访问此存储账户)。

4. 权限生效延迟处理

Azure RBAC权限分配可能存在5-10分钟的生效延迟,配置完成后等待一段时间再测试,或重启专用SQL池/Spark会话重试。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 19:14:54