Google Workspace服务密钥获取教程:Synology迁移授权一步到位
在将Google Workspace的邮件、联系人和日历数据迁移到Synology MailPlus、Contacts或Calendar时,Google Workspace服务密钥是关键授权凭证——没有它,Synology无法获取Google账户的数据访问权限,迁移会直接卡在“授权失败”环节。很多用户在这一步因不熟悉Google管理控制台和Cloud平台操作,常出现“API未启用”“密钥无效”“域委派失败”等问题。
本文基于Synology官方指南(参考链接:https://kb.synology.cn/zh-cn/DSM/tutorial/How_to_obtain_authorization_from_Google_for_migrating_emails_from_G_Suite),从“配置Drive SDK API”到“完成全网域委派”,分2大核心模块、18个细分步骤,手把手教你获取有效服务密钥,确保Synology迁移顺利启动,即使是新手也能轻松掌握。
一、前置说明:获取服务密钥的2个核心前提
在开始操作前,需确认以下2个条件已满足,避免后续步骤反复返工:
1. 拥有Google Workspace域超级管理员权限:操作需修改Google Workspace全局API设置和域委派权限,普通用户账户无权限,必须使用域超级管理员账号(如admin@your-domain.com)登录。
2. 准备Synology迁移需求清单:明确迁移的数据类型(仅邮件/含联系人日历),本文步骤覆盖全数据迁移所需的API和权限,无需额外调整。
二、模块1:配置Google Workspace的Drive SDK API(允许第三方访问云端数据)
首先需在Google Workspace管理控制台中启用“Drive SDK API”,这是Synology访问Google云端数据的基础开关,步骤如下:
步骤1:登录Google Workspace管理控制台
1. 打开浏览器,访问[Google Workspace管理控制台](https://admin.google.com/),输入域超级管理员账号(如admin@company.com)和密码,完成登录。
2. 登录后进入控制台首页,左侧导航栏会显示“用户”“群组”“应用”等菜单,确认当前账号有“应用”模块的管理权限(无该模块则需联系上级管理员获取权限)。
步骤2:进入“Drive和Docs”设置页面
1. 在左侧导航栏点击“应用”→“Google Workspace”(展开Google Workspace核心服务列表)。
2. 在服务列表中找到并点击“Drive and Docs”(中文界面显示“云端硬盘和文档”),进入该服务的详细设置页。
步骤3:启用Drive SDK API访问权限
1. 在“Drive和Docs”设置页中,点击“功能和应用程序”(位于页面中部,下方有“模板”“转移所有权”等选项)。
2. 找到“Drive SDK”区域,勾选“允许用户使用Drive SDK API访问Google云端硬盘”选项(默认可能未勾选,需手动开启)。
3. 点击页面底部“保存”按钮,系统会提示“更改可能需要24小时才能应用到所有用户”,无需等待,继续后续操作(实际多数情况下1-2小时内生效)。
三、模块2:创建Google Workspace服务密钥(核心授权凭证生成)
这是获取服务密钥的核心环节,需在Google Cloud Platform(GCP)中创建项目、启用必要API、创建服务账户并生成JSON密钥,最后完成全网域委派,共15个细分步骤,每一步都需仔细核对:
步骤1:登录Google API Console并新建项目
1. 打开新浏览器标签页,访问[Google API Console](https://console.cloud.google.com/),使用同一域超级管理员账号登录。
2. 点击页面顶部“选择项目”下拉框(默认显示“我的项目”),在弹出窗口中点击右上角“新建项目”。
3. 在“新建项目”窗口中:
- 项目名称:输入便于识别的名称(如“Synology-Google迁移”“MailPlus授权项目”)。
- 项目ID:系统自动生成(不可修改,记录下来备用,非必需)。
- 组织/位置:选择你的Google Workspace组织(如“company.com”),若无则选择“无组织”。
4. 点击“创建”按钮,系统开始创建项目(耗时约10-30秒),创建完成后会弹出通知,点击“选择项目”切换到新创建的项目。
步骤2:启用迁移所需的6个核心API
Synology迁移需依赖Google的6个API,必须全部启用,否则会因权限不足导致迁移失败:
1. 在Google API Console左侧导航栏点击“API和服务”→“库”,进入API库页面。
2. 在搜索框中分别搜索以下API,找到后点击“启用”(每个API需单独操作):
- Admin SDK API:用于访问Google Workspace用户和域信息。
- Google People API:用于迁移联系人数据。
- Gmail API:用于迁移邮件数据。
- Google Calendar API:用于迁移日历数据。
- Google Drive API:用于访问云端关联文件(如邮件附件)。
- Tasks API:用于迁移任务数据(若需迁移日历任务)。
3. 启用后可在“API和服务”→“仪表板”中查看已启用的API列表,确认6个API均显示“已启用”状态。
步骤3:创建服务账户(用于Synology授权)
1. 在左侧导航栏点击“IAM和管理”→“服务账户”,进入服务账户列表页。
2. 点击页面顶部“+ 创建服务账户”按钮,进入创建流程:
- 第一步:服务账户详情:
- 服务账户名称:输入名称(如“synology-migrate-account”)。
- 服务账户ID:系统自动生成(如“synology-migrate-account@项目ID.iam.gserviceaccount.com”,无需修改)。
- 服务账户描述:输入“用于Synology迁移Google Workspace数据”(便于后续识别)。
- 点击“创建并继续”。
- 第二步:授予项目访问权限:
- 在“选择角色”下拉框中,搜索并选择“Project”→“所有者”(需赋予完整权限,确保能读取所有迁移数据)。
- 无需添加“条件”,直接点击“继续”。
- 第三步:授予用户访问权限(可选):
- 此步骤无需设置,直接点击“完成”,返回服务账户列表页。
步骤4:生成服务账户JSON密钥
1. 在服务账户列表中,找到刚创建的服务账户(如“synology-migrate-account”),点击其右侧“操作”列的“⋮”(更多选项),选择“管理密钥”。
2. 进入“密钥”标签页,点击“添加密钥”→“创建新密钥”。
3. 在弹出窗口中:
- 密钥类型:选择“JSON”(推荐格式,Synology支持最佳,P12仅用于旧系统兼容)。
- 点击“创建”,系统会自动生成JSON密钥文件(如“synology-migrate-account-xxxx.json”)并下载到本地电脑。
- 重要:立即将该文件保存到安全位置(如加密U盘),密钥一旦丢失无法找回,且能直接访问你的Google数据,切勿泄露。
4. 点击“关闭”,返回服务账户详情页。
步骤5:复制服务账户唯一ID(用于域委派)
1. 在服务账户详情页,切换到“详细信息”标签页,找到“唯一ID”字段(一串数字和字母组合,如“123456789012345678901”)。
2. 将“唯一ID”复制到记事本或文档中保存,后续全网域委派需使用该ID。
步骤6:配置Google Workspace全网域委派(关键授权步骤)
1. 回到之前的Google Workspace管理控制台标签页(或重新登录[admin.google.com](https://admin.google.com/))。
2. 在左侧导航栏点击“安全性”→“访问权限和数据控制”→“API控制”,进入API控制页面。
3. 滚动到页面底部,找到“全网域委派”模块,点击“管理全网域委派”。
4. 在“API客户端”页面,点击“新增”按钮,弹出“添加新客户端ID”窗口。
5. 填写以下信息:
- 客户端ID:粘贴步骤5中保存的服务账户“唯一ID”。
- OAuth范围(逗号分隔):复制并粘贴以下完整范围(缺一不可,直接复制避免手动输入错误):
```
https://www.googleapis.com/auth/admin.directory.user,https://www.googleapis.com/auth/admin.directory.domain.readonly,https://www.googleapis.com/auth/drive,https://mail.google.com,https://www.googleapis.com/auth/calendar,https://www.googleapis.com/auth/contacts,https://www.googleapis.com/auth/contacts.other.readonly,https://sites.google.com/feeds,https://www.googleapis.com/auth/tasks
```
6. 点击“授权”按钮,系统会提示“已添加客户端”,此时全网域委派配置完成。
四、关键验证:确认服务密钥有效性(避免迁移时踩坑)
生成密钥后,需简单验证是否有效,避免后续迁移时发现问题返工:
1. 检查JSON密钥文件:打开下载的JSON文件,确认包含“type”“project_id”“private_key”“client_email”“client_id”等字段(无缺失字段则格式正确)。
2. 确认API启用状态:在Google API Console的“API和服务”→“仪表板”中,刷新页面,确认6个核心API均显示“已启用”(若有“已禁用”需重新启用)。
3. 核对域委派信息:在“全网域委派”页面,确认新增的客户端ID状态为“已授权”,OAuth范围与步骤6中输入的一致。
五、常见问题与解决方案(解决90%授权失败问题)
问题1:生成密钥后,Synology迁移仍提示“授权失败”
- 原因:API启用后未生效(需24小时)、服务账户角色未设为“所有者”、OAuth范围缺失。
- 解决:
1. 等待1-24小时(API生效时间)后重试。
2. 检查服务账户角色:进入“IAM和管理”→“IAM”,确认服务账户的角色为“Project > 所有者”。
3. 重新配置域委派,确保OAuth范围完整(无遗漏链接)。
问题2:无法找到“全网域委派”选项
- 原因:当前登录账户不是域超级管理员,仅拥有普通管理员权限。
- 解决:使用域超级管理员账号(通常为admin@domain.com)重新登录Google Workspace管理控制台,普通管理员无“全网域委派”权限。
问题3:JSON密钥文件丢失或泄露
- 原因:未妥善保存或误删,或密钥文件被他人获取。
- 解决:
1. 立即吊销旧密钥:进入服务账户“管理密钥”页面,找到丢失的密钥,点击“删除”。
2. 重新生成新密钥:按步骤4重新创建JSON密钥,更新Synology迁移配置中的密钥文件。
3. 若怀疑泄露,需在Google Workspace管理控制台中撤销该服务账户的域委派权限,避免数据风险。
问题4:启用Drive SDK API后,仍无法访问云端文件
- 原因:更改未同步到所有用户,或域内有组织单元(OU)限制。
- 解决:
1. 等待24小时确保更改生效。
2. 在“Drive和Docs”设置页中,点击“组织单元”,确认所有用户所在的OU均未单独禁用Drive SDK API(若有,需开启)。
六、总结:服务密钥获取的核心流程与安全建议
获取Google Workspace服务密钥的核心流程可概括为:配置Drive SDK API→创建GCP项目→启用核心API→创建服务账户→生成JSON密钥→完成域委派,共6个关键节点。为确保授权顺利且数据安全,建议:
1. 专用项目隔离:为Synology迁移单独创建GCP项目,避免与其他业务项目混用,便于权限管理和后续删除。
2. 密钥安全存储:将JSON密钥文件加密存储,迁移完成后建议删除该服务账户(或吊销密钥),减少安全隐患。
3. 迁移前测试:先用1-2个测试用户的Google账户尝试迁移,确认服务密钥有效后再批量迁移,避免大规模失败。
通过以上步骤获取的Google Workspace服务密钥,可直接用于Synology MailPlus、Contacts和Calendar的迁移配置,授权Synology安全读取Google数据,顺利完成迁移任务。
地址:北京市海淀区白家疃尚品园 1号楼225
北京群晖时代科技有限公司