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

Databricks中SAS Token+ABFS访问ADLS Gen2报403,WASB正常

测试环境Databricks通过ABFS访问生产ADLS Gen2报403的排查建议

问题场景

  • 现有测试(stg)、生产(prod)两个Databricks工作区
  • stg作业需读取prod环境ADLS Gen2中的JSON文件,输出写入stg Blob存储,使用SAS Token做身份认证
  • stg环境下:使用ABFS协议(spark.read.json("abfss://<container>@<account_name>.dfs.core.windows.net/<blob_path>"))访问时触发403错误,但改用WASB协议+相同SAS Token可正常访问
  • prod环境下:ABFS、WASB两种协议均能正常访问目标存储
  • 已知prod Blob存储配置了防火墙,无法查看具体规则,怀疑WASB协议是否绕过了防火墙限制

核心原因分析

  1. 端点差异导致防火墙拦截:ABFS协议使用dfs.core.windows.net端点,WASB协议使用blob.core.windows.net端点。prod的防火墙规则可能仅允许了blob.core.windows.net的访问请求,而未放行dfs.core.windows.net的流量,导致stg的ABFS请求被拦截。
  2. SAS Token权限覆盖范围:生成SAS Token时,若仅指定了Blob服务权限,未包含ADLS Gen2对应的File服务权限,可能导致ABFS协议访问受限(WASB仅依赖Blob服务权限)。不过prod环境两种协议均正常,此可能性较低,但仍需验证。
  3. Databricks出站网络限制:stg Databricks工作区(尤其是VNet注入部署的集群)的出站流量可能被内部防火墙/NVA限制,仅允许访问blob.core.windows.net,阻断了对dfs.core.windows.net的请求。

排查与解决建议

1. 验证端点访问连通性

在stg Databricks集群的笔记本中执行以下命令,确认两个端点的访问差异:

  • 解析端点:
    nslookup <account_name>.dfs.core.windows.net
    nslookup <account_name>.blob.core.windows.net
    
  • 直接测试HTTP访问(替换实际SAS Token):
    curl -v "https://<account_name>.dfs.core.windows.net/<container>/<blob_path>?<your_sas_token>"
    curl -v "https://<account_name>.blob.core.windows.net/<container>/<blob_path>?<your_sas_token>"
    

对比两个请求的返回结果,若dfs端点返回403而blob端点正常,基本可确认是防火墙针对端点的拦截。

2. 检查SAS Token权限配置

确认生成SAS Token时,**服务类型(Service)**勾选了Blob和File两项:

  • ABFS协议依赖ADLS Gen2的File服务权限,若仅勾选Blob,会导致ABFS访问被拒绝。
  • 可通过SAS Token的sv参数验证:若值为bf则包含Blob和File服务,若仅为b则仅支持Blob服务。

3. 调整防火墙与网络规则

  • 若能联系prod存储管理员,请求将stg Databricks工作区的出站IP范围添加到prod Blob防火墙的允许列表中,同时确保规则覆盖dfs.core.windows.net端点。
  • 若stg Databricks使用VNet注入,检查VNet的出站NSG规则或防火墙策略,确认未阻断对*.dfs.core.windows.net的443端口访问。

4. 临时应急方案

若短期内无法调整防火墙或网络规则,可临时改用WASB协议完成数据读取,但需注意:ABFS是ADLS Gen2的推荐协议,支持分层命名空间、ACL管理等高级功能,长期建议优先修复ABFS的访问问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 06:33:14