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

Azure Video Indexer上传提示STORAGE_ACCESS_DENIED权限问题求助

Azure Video Indexer 存储访问拒绝问题排查与解决方法

核心问题定位

错误提示明确指向系统分配的托管身份权限不足,而非你自身用户的权限——这是常见误区:你给自身用户配置了Owner/Contributor,但Video Indexer服务实际使用的是自身的系统托管身份来访问存储账户。

具体排查步骤

1. 验证Video Indexer系统托管身份的权限

  • 进入Azure Portal的Video Indexer资源,打开「标识」页面,确认系统分配的身份已启用,记录其对象ID(Object ID)
  • 进入目标存储账户的「访问控制(IAM)」页面,搜索上述对象ID,检查是否已分配Storage Blob Data Contributor角色

    注意:普通的Contributor角色是管理层面权限,无法直接访问Blob数据,必须使用专门的Blob数据角色

2. 确认权限生效

使用Azure CLI验证托管身份的角色分配:

az role assignment list --assignee <托管身份Object ID> --scope /subscriptions/<订阅ID>/resourceGroups/<资源组>/providers/Microsoft.Storage/storageAccounts/<存储账户名>

确保输出结果中包含Storage Blob Data Contributor角色。

3. 检查存储账户网络限制

  • 进入存储账户的「网络」页面,若开启了防火墙或虚拟网络:
    • 确认已添加Video Indexer所在区域的VideoIndexer服务标签
    • 或临时勾选「允许受信任的Microsoft服务访问此存储账户」进行测试

4. 处理自动生成的Blob

上传失败后出现的自动Blob是服务创建的临时文件,因权限中断未正常清理,解决权限问题后该现象会消失,可手动删除现有临时文件,不影响服务运行。

5. 排查DefaultAzureCredential配置

  • 本地测试时,DefaultAzureCredential会优先使用Visual Studio登录的用户身份,但部署到Azure环境后,需确保服务使用的是Video Indexer的系统托管身份
  • 若需强制指定托管身份验证,可修改代码:
var credential = new DefaultAzureCredential(new DefaultAzureCredentialOptions 
{ 
    ManagedIdentityClientId = "<Video Indexer托管身份的Client ID>" 
});

6. 临时恢复方案

  • 尝试禁用再重新启用Video Indexer的系统托管身份,之后重新分配Storage Blob Data Contributor角色
  • 检查存储账户访问密钥是否正常(虽错误指向身份权限,但可排除密钥轮换导致的异常)

7. 联系官方支持

若以上步骤均无效,使用错误信息中的Trace ID(4b213fc5-df2c-49fc-8f45-5c5a162c8b4f)联系Azure官方支持,后台日志可定位具体权限校验失败原因。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 05:03:22