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

如何限制Google Workspace服务账号仅可模拟指定单个用户

解决服务账号仅能模拟单个特定用户的方案

方法1:通过Google Workspace管理控制台配置应用访问控制(核心限制)

  • 登录Google Workspace管理控制台,进入安全 > 访问和数据控制 > API控制 > 应用访问控制
  • 点击添加应用 > 按客户端ID搜索,输入服务账号对应的OAuth客户端ID(可从Google Cloud控制台服务账号详情或密钥文件的client_id字段获取)
  • 选中目标应用后,点击选择限制,选择限制访问特定用户/组
  • 添加指定用户(如accounting@mycompany.com),保存配置

配置生效后,即使代码中修改subject为其他用户,API请求会直接返回403 Forbidden,从Workspace层面阻断非法访问。

方法2:代码层面固定目标用户(辅助防护)

在代码中硬编码要模拟的用户邮箱,避免误修改:

# 固定目标用户,禁止随意变更
TARGET_USER = "accounting@mycompany.com"
credentials = service_account.Credentials.from_service_account_info(
   creds_dict,
   scopes=scopes,
   subject=TARGET_USER
)
gmail_service = build("gmail", "v1", credentials=credentials, cache_discovery=False)

验证配置有效性

  • 修改代码subject为组织内其他用户,发起API请求,应返回权限错误
  • 使用指定用户邮箱作为subject时,请求可正常执行

注:应用访问控制配置可能需要数分钟生效,配置完成后请等待一段时间再测试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 21:23:20