Gmail Service Account
当 Google Workspace 组织集中批准邮箱索引时,使用 Service Account。Workspace 管理员负责配置 Domain-Wide Delegation,OpenCore Admin 负责上传密钥并提供 Primary Admin Email。
前置条件
请使用 Standard 模式。你需要一个由组织控制的 Google Cloud Project,在该项目中启用 Gmail API 和 Admin SDK API,需要可配置 Domain-Wide Delegation 的 Google Workspace 管理员,以及 Workspace 组织内已获批准的管理员或所有者账号。
创建 Service Account
在 Google Cloud 中创建 Service Account,为它启用 Domain-Wide Delegation,并创建 JSON 密钥。OpenCore 要求 JSON 对象的 type 为 service_account。
请对密钥保密。另行记录 Service Account OAuth client ID;Workspace 委派条目使用该数字 client ID,而不是 Service Account 邮箱。
配置 Domain-Wide Delegation
在 Google Workspace Admin console 中,将 Service Account OAuth client ID 添加到 Domain-Wide Delegation,并且仅授权当前 Gmail 连接器所需的 Scope:
请勿将 Google Drive Scope 复制到此委派中。Gmail 连接器不会请求 Drive 内容或元数据访问权限。
将凭据添加到 OpenCore
- 以 Admin 身份登录 OpenCore,并打开“文档与知识”。
- 选择 Gmail,选择 Service account,然后上传或粘贴 Service Account JSON 密钥。
- 输入拥有已批准索引的 Gmail 账号所属 Google 组织中管理员或所有者的 Primary Admin Email。
- 创建凭据,确认它出现在凭据列表中,并在创建 Gmail 连接器时选择它。
Primary Admin Email 用于 Admin SDK 目录访问。连接器列出 Workspace 用户后,Service Account 会在读取每个用户的 Gmail 线程时模拟该用户。
账号范围与权限同步
当 Domain-Wide Delegation 和目录权限正常工作时,连接器会处理 Primary Admin Email 所属 Workspace 域返回的用户地址。目录列表返回 403 或 404 时,实现会退回到所配置的 Primary Admin Email,因此请从实际索引结果确认账号范围。
每个已索引线程均为非公开,并将获取它的邮箱作为唯一外部用户访问权限。邮件收件人和 Workspace 群组不会被添加到该访问记录。当 Gmail 权限同步运行时,它会为时间窗口内返回的线程刷新这一“仅邮箱”记录。
验证更新
使用已批准的索引开始日期和有代表性的邮箱边界创建 Gmail 连接器。默认刷新频率为 30 分钟,可更改为其他不低于一分钟的值。运行首次索引尝试,并在将文档集附加给 Agent 前验证预期账号、线程和纯文本内容。
创建另一个 Service Account 或 OAuth 凭据会保留现有 Gmail 凭据。对不同 Workspace 组织或批准边界使用独立凭据,并在运行索引尝试前检查所选凭据。
故障排查
相关页面
- Gmail 概览 介绍索引内容、账号范围、更新和权限边界。
- Gmail OAuth 介绍使用已上传 OAuth app JSON 的浏览器授权。
- 连接器与索引 说明文档集和索引尝试。