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

使用ADF Web Activity列出存储账户表时认证失败求助

Azure存储表Web Activity认证失败问题排查与解决

问题场景

已添加源存储账户SAS Token参数,通过Web Activity调用Azure表存储的列出表接口,配置如下:

  • URL: @concat('https://srcstoreacc131.table.core.windows.net/Tables', pipeline().parameters.sourceSAS)
  • Headers: Accept-application/json(作为动态内容值)
  • Method: GET

触发认证失败错误,错误信息:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<error xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata">
  <code>AuthenticationFailed</code>
  <message xml:lang="en-US">Server failed to authenticate the request. Make sure the value of Authorization header is formed correctly including the signature.
Time:2024-04-23T12:32:02.1385780Z</message>
</error>

排查与解决步骤

  • 修正URL拼接格式
    检查SAS Token是否以?开头:如果参数sourceSAS没有包含?,拼接后的URL会缺少参数分隔符,导致服务无法正确解析SAS Token。
    调整URL表达式:

    @concat('https://srcstoreacc131.table.core.windows.net/Tables', if(startswith(pipeline().parameters.sourceSAS, '?'), '', '?'), pipeline().parameters.sourceSAS)
    

    或者直接确保SAS Token参数本身以?开头,避免重复拼接。

  • 验证SAS Token权限
    确认生成SAS Token时,已授予表服务的List(列出)权限:检查SAS Token的sp参数,需包含l(例如sp=rl表示读取+列出权限)。无List权限会导致列出表接口调用被拒绝。

  • 修正请求头格式
    当前Headers配置错误,正确的键值对应为:

    • 键:Accept
    • 值:application/json
      不要将键和值合并写为Accept-application/json。
  • 检查SAS Token有效期
    确认SAS Token是否在有效期内,过期的Token会直接触发认证失败,可重新生成有效期内的Token测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 22:59:59