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

如何使用服务账号访问Google Drive Revisions API?权限报错求助

解决Google Drive API获取文件修订记录的权限不足问题

问题详情

获取文件变更时触发权限错误:

The user does not have sufficient permissions for file ***

使用的Python代码:

SCOPES = ['https://www.googleapis.com/auth/drive']
credentials = service_account.Credentials.from_service_account_file(
    'service.json', scopes=SCOPES)
service = build('drive', 'v3', credentials=credentials)
service.revisions().list(fileId=DOC_ID)

IAM配置截图:
IAM配置截图

注:目标文件为自行在docs.google.com创建的文件。

解决方案

  • 给服务账号添加文件级权限
    服务账号是独立的身份实体,即使你是文件所有者,它默认也没有访问权限。操作步骤:

    1. 打开docs.google.com找到目标文件,右键选择「共享」
    2. 填入service.json文件中client_email字段对应的邮箱地址
    3. 授予至少「查看者」权限(仅获取修订记录无需更高权限)
    4. 确认共享设置
  • 检查Scope配置
    当前使用的https://www.googleapis.com/auth/drive权限范围已经满足需求,若想遵循最小权限原则,可替换为https://www.googleapis.com/auth/drive.readonly,不影响功能。

  • 验证服务账号关联项目
    确保service.json对应的GCP项目,与你配置IAM的项目为同一项目,避免因项目不匹配导致权限未生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 15:37:34