在IICS CAI中通过REST API为Azure块Blob设置元数据
IICS CAI中Blob元数据设置REST API的请求头配置及认证修复
核心请求头明细及传递规则
1. Authorization头(解决InvalidAuthenticationInfo错误的关键)
Blob存储REST API支持两种主流认证方式,对应格式必须严格遵守:
- Azure AD令牌认证
- 头键:
Authorization - 值格式:
Bearer <有效Azure AD访问令牌>
注意:令牌必须具备Blob存储的写权限(如Storage Blob Data Contributor角色),且未过期。
- 头键:
- SAS令牌认证
- 头键:
Authorization - 值格式:
SharedAccessSignature <完整SAS令牌(需去掉开头的?)>
示例:若SAS令牌为?sv=2023-11-03&ss=b&sp=w&sig=xxxx,则值应为SharedAccessSignature sv=2023-11-03&ss=b&sp=w&sig=xxxx
- 头键:
2. 其他必填请求头
x-ms-version:指定Blob服务版本,推荐用最新兼容版本(如2023-11-03),不能为空x-ms-blob-type:仅针对未设置过元数据的Blob,值为BlockBlob/PageBlob(匹配你的Blob类型)- 自定义元数据:格式为
x-ms-meta-<自定义键>,例如x-ms-meta-project: CRM,键名无空格/特殊字符,值含特殊字符时需URL编码
错误排查要点
- 检查Authorization头前缀:
Bearer/SharedAccessSignature拼写、大小写完全正确,前缀与令牌间必须有空格 - Azure AD令牌需确认是针对Blob存储资源颁发的,而非其他服务(如Azure AD Graph)
- SAS令牌需确保包含
w(写权限),且未过期、资源范围匹配目标Blob/容器 - IICS CAI中配置时,若用变量存储令牌,需确认变量引用语法正确(如
Bearer ${azure_ad_token})
IICS CAI配置示例请求头
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6... x-ms-version: 2023-11-03 x-ms-blob-type: BlockBlob x-ms-meta-department: finance Content-Type: application/json
内容的提问来源于stack exchange,提问作者Mitali
相关产品推荐
相关产品推荐

