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

Azure Data Lake Storage Gen2调用List filesystems接口报AuthorizationPermissionMismatch错误

问题根因

你遇到的权限报错是因为两个接口所属的权限作用范围不同:

  • List filesystems是存储账户层级的操作,需要身份凭证拥有存储账户级别的对应操作权限
  • List paths是单个文件系统层级的操作,仅需要对应文件系统的权限即可
    你当前使用的Bearer凭证仅被授予了单个文件系统的访问权限,没有存储账户层级的操作授权,因此会出现调用List filesystems报错、调用List paths正常的现象。
解决建议
  • 调整权限分配范围
    将当前身份(服务主体/用户账号)的角色分配范围从指定文件系统修改为整个存储账户,保持原有角色(如存储Blob数据读者、存储Blob数据贡献者)不变即可,这类内置角色默认包含账户级的List filesystems操作权限。
  • 新增自定义角色权限(最小权限原则)
    如果不希望扩大授权范围到所有文件系统,可以新建自定义角色,添加Microsoft.Storage/storageAccounts/blobServices/containers/read权限,将该自定义角色分配给对应身份,仅授予存储账户下列举容器(文件系统)的权限,不会授予其他文件系统的操作权限。
  • 检查OAuth令牌请求参数
    如果你是通过OAuth 2.0申请的Bearer令牌,确认请求令牌时的scope参数为https://storage.azure.com/.default,避免scope限制到单个文件系统导致权限不足。
验证步骤

权限配置更新后等待2分钟左右生效,重新调用List filesystems接口:

https://<account_name>.dfs.core.windows.net/?resource=account

确认可以正常返回存储账户下所有文件系统列表即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 15:54:00