CreateYourVPN Academy
备份

备份到 Google Drive

手把手教程:创建 Google Cloud 项目、启用 Drive API、发布 OAuth 同意屏幕,并获取 Client ID、Client Secret 和 Refresh Token 粘贴到 CreateYourVPN 备份中。

要备份到你自己的 Google Drive,CreateYourVPN 需要从 Google 获取三个值:一个 Client ID、一个 Client Secret 和一个 Refresh Token。你只需获取一次,把它们粘贴到备份设置里,之后就再也不用碰 Google 了。

Google Cloud Console 的具体措辞时不时会有变动,因此请把下面的操作路径当作一张地图,而不是逐像素精确的脚本——各个板块的名称与此大致相近。

最关键的一步是把同意屏幕发布为"正式版(In production)"(第 3 步)。如果你把它停留在**测试(Testing)**模式,Google 会在 7 天后使你的 refresh token 失效,备份会悄无声息地停止,且没有明显的报错。千万别跳过这一步。

第 1 步。创建一个项目

打开 Google Cloud Console,并使用你希望用来存放备份的那个 Google 账户(也就是备份要存到其 Drive 的账户)登录。

在顶部栏中打开项目选择器,点击 "New Project"。为它取任意名称(例如 CYV Backups)并创建。继续操作前,请确认已选中这个新建的项目。

第 2 步。启用 Google Drive API

前往 APIs & Services → Library

搜索 "Google Drive API",打开它,然后点击 "Enable"

第 3 步。配置并发布同意屏幕

前往 APIs & Services → OAuth consent screen

选择 "External" 用户类型,并填写必填的基本信息:应用名称(例如 CYV Backups)、你的支持邮箱以及一个开发者联系邮箱。可选字段可以留空。

一路保存,走完向导。当你回到 OAuth consent screen 概览页时,找到 "Publishing status",点击 "Publish app",让状态变为 "In production"

**Publishing status 必须显示为 "In production",而不是 "Testing"。**在 Testing 模式下,Google 会把 refresh token 视为短期有效,并在 7 天后将其吊销——你的备份会正常运行一周,然后悄然失效。正是发布为正式版才能让令牌持久有效。Google 可能会显示一条吓人的"未经验证的应用(unverified app)"提示;在这里无需担心——这个应用只由你自己使用、只针对你自己的 Drive,而且它只请求下面那个范围极小的权限。

第 4 步。创建一个 OAuth Client ID(Web application)

前往 APIs & Services → Credentials → Create credentials → OAuth client ID

Application type 处选择 "Web application" 并为它取个名称。不要选 "Desktop app"——第 5 步的 OAuth Playground 会向 Google 递交一个 redirect URL,而只有 Web application 类型的客户端才能把它加入白名单。

"Authorized redirect URIs" 下,点击 "+ Add URI",并不带末尾斜杠地原样粘贴这一行:

https://developers.google.com/oauthplayground

若缺少这一行,Google 会在第 5 步以 Error 400: redirect_uri_mismatch 阻止登录。

点击 "Create"。Google 会向你显示一个 Client ID 和一个 Client Secret——两者都复制下来。这就是你要粘贴到 CreateYourVPN 的三个值中的两个。

已经创建了 "Desktop app" 客户端并撞上了 Error 400: redirect_uri_mismatch?这正是原因所在:desktop 客户端无法持有 redirect URI,所以 Playground 用不了它。请新建一个带上述 redirect URI 的 Web application 客户端,并使用它的 Client ID 和 Secret。

第 5 步。获取 Refresh Token

正是 refresh token 让 CreateYourVPN 能够按计划写入 Drive,而无需你每次都登录。获取它最快的方式是使用 Google OAuth Playground

点击齿轮图标(右上角的 settings),勾选 "Use your own OAuth credentials",然后粘贴第 4 步得到的 Client IDClient Secret

在左侧的 "Step 1" 面板中,不要从列表里挑选——滚动到 input your own scopes 输入框,准确输入:

https://www.googleapis.com/auth/drive.file

然后点击 "Authorize APIs",用同一个 Google 账户登录并批准访问。

"Step 2" 中,点击 "Exchange authorization code for tokens"。响应结果里包含一个 refresh_token——复制它的值。

drive.file 这个 scope 特意设计得非常狭窄:它只允许应用查看和管理它自己创建的文件,绝不涉及你 Drive 里的其余内容。备份所需的正是如此。如果你更愿意运行自己的同意流程而非使用 Playground,那也完全可以——只需请求同样的 drive.file scope,并带上 access_type=offline,Google 就会返回一个 refresh token。

第 6 步。粘贴到 CreateYourVPN

在控制台中,打开账户菜单 → 备份,选择 Google Drive 作为目标存储,然后粘贴:

  • Client ID(第 4 步)
  • Client Secret(第 4 步)
  • Refresh Token(第 5 步)

接着选择你的口令频率保留策略,然后保存。

无需填写文件夹 ID。首次运行时,应用会在你的 Drive 中自动创建一个属于它自己的 "CYV Backups" 文件夹,并把每一份备份都存放在那里——你 Drive 里的其他内容不会被触碰。

接下来

On this page