RetroMail OAuth 部署参数配置说明

omoifly

发布于6天前
life goes on and on and on

RetroMail OAuth 部署参数配置说明

RetroMail 是一个复古风格的邮件客户端,支持 Gmail, Hotmail, Outlook, QQ, IMAP/SMTP, Microsoft Exchange Server 多个 Provider.

此外,本客户端充分利用懒猫客户端的通知功能,可以做到不输各官方邮件客户端的收信速度。

本教程专为懒猫微服用户编写,手把手教你创建 Gmail 和 Microsoft 的 OAuth 凭据,填入懒猫安装参数,让 RetroMail 能够连接你的邮箱。
逻辑都是一样的,申请个人使用的邮箱API, 申请密钥,然后配置回调以支持懒猫无缝服务。

预计耗时:15-20 分钟。


概览

下面两个是独立的,按需选择(也可以都配):

  • 要用 Gmail → 去 Google 创建 OAuth 凭据
  • 要用 Outlook/Hotmail → 去 Microsoft 创建 OAuth 凭据

拿到凭据后回到懒猫填入参数、连接邮箱。

📌 先记下你的回调地址(后面在 Google 和 Microsoft 控制台都要用到):

用途回调地址
Gmailhttps://retro-mail.<你的微服名>.heiyu.space/api/v1/oauth/gmail/callback
Microsofthttps://retro-mail.<你的微服名>.heiyu.space/api/v1/oauth/microsoft/callback

⚠️ 地址必须完全一致,包括 https、域名、路径、大小写和结尾斜杠。


配置 Gmail(要用 Gmail 才做)

1.1 创建项目并启用 Gmail API

  1. 打开 Google Cloud Console
  2. 登录你的 Google 账号
  3. 点击顶部项目选择器 → 新建项目

image.png

  1. 项目名称填写 RetroMail 或者任意你想要的名称,点击 创建
  2. 等待创建完成,确认顶部已选中 RetroMail 项目
  3. 左侧菜单 → APIs & Services / API和服务Library / 库

image.png
image.png

  1. 搜索 Gmail API,点击进入后点击 Enable / 启用
    image.png
    image.png

1.2 配置 OAuth 同意屏幕

  1. 左侧菜单 → APIs & Services / API和服务OAuth consent screen / OAuth权限请求页面
    image.png

image.png

  1. 点击 Get started / 开始 App Information(应用名称) 看着填就行,注意 Audience/受众群体 需要选择 External/外部,剩下的可以看着填

image.png
image.png
image.png

  1. Branding(品牌塑造)页面填写都是默认,注意 Authorized domains/已获授权的网域 需要配置一下:

    字段填写内容
    App nameRetroMail
    User support email选择你的 Google 邮箱
    Developer contact email同上

image.png
image.png

  1. 点击 Save / 保存

  2. Audience / 目标对象 这里有两种选择

  • 如果是 Testing/测试版 模式,需要在下面的 Test users / 测试用户 中加入你想要登陆的 gmail 邮箱,且这样的话,每七天会要求你重新授权
    image.png
    image.png

  • 如果你选择 publish app, 此时不输入邮箱,也不需要每七天重新授权,但是登陆时会有安全提示(可以忽略),笔者推荐使用这种模式

image.png
image.png

  1. Data Access(数据访问)页面 —— 这是关键步骤:
    • 点击 Add or Remove Scopes / 添加或移除范围
    • 搜索框输入 gmail.modify
    • 勾选出现的 https://www.googleapis.com/auth/gmail.modify
    • 点击 Update/更新Save and Continue 注意最下面还要 save 一下

image.png

image.png

注意下面这里还要保存一次
image.png

1.3 创建 OAuth Client

  1. 左侧菜单 → APIs & Services/API和服务Credentials/凭证
  2. 点击 + Create Credentials / 创建凭证OAuth client ID / OAuth客户端ID

image.png
image.png
image.png

  1. 填写:

    字段填写内容
    Application type(应用类型)Web application / Web应用
    Name(名称)RetroMail Web
    Authorized redirect URIs (已获授权的重定向 URI)https://retro-mail.<你的微服名>.heiyu.space/api/v1/oauth/gmail/callback

    点击 + Add URI 添加回调地址。如有多余的 https://localhost:8080
    占位符,可以删除。

image.png
image.png

  1. 点击 Create/创建

  2. 弹出窗口显示 Client ID/客户端 IDClient Secret/客户端密钥

    • 立即复制保存这两个值
    • 关闭弹窗后就看不到 Client Secret 了

⚠️ 把这两个值粘贴到记事本或密码管理器中。不要截图分享。

Gmail OAuth 凭据完成! 记好你的:

  • Google Client ID
  • Google Client Secret

配置 Microsoft(要用 Outlook/Hotmail 才做)

2.1 注册应用

  1. 打开 Microsoft Entra admin center

  2. 登录你的 Microsoft 账号

    不需要 Azure 订阅,免费注册的 Microsoft 账号即可操作。

  3. 左侧菜单 → IdentityApplicationsApp registrations

  4. 点击 + New registration

  5. 填写:

    字段填写内容
    NameRetroMail
    Supported account typesAccounts in any organizational directory and personal Microsoft accounts
    Redirect URI留空,稍后单独配置

如果你的界面是中文的,参考如下截图

image.png

  1. 点击 Register

  2. 注册完成后,复制 Application (client) ID(中文是應用程式 (用戶端) 識別碼) 备用

image.png

⚠️ 复制的是 **Application (client) ID **,不是 Object ID。

2.2 配置 Web 回调地址

  1. 左侧菜单 → ManageAuthentication
  2. 点击 + Add a platformWeb
  3. Redirect URIs 中输入你的 Microsoft 回调地址(见上方概览)
  4. 点击 Configure

image.png

不需要勾选页面下方的 Implicit grant 或 Hybrid flow 开关。

2.3 创建 Client Secret

  1. 左侧菜单 → ManageCertificates & secrets
  2. Client secrets 标签页,点击 + New client secret

📸 截图:新建 client secret 按钮

  1. 填写描述 RetroMail,有效期选择 12 months

  2. 点击 Add
    image.png

  3. 立即复制 Value 列显示的值

image.png

⚠️ 离开此页面后再也看不到这个值。复制的是 Value / 值(类似 abc123~xyz...),
不是 Secret ID / 祕密識別碼。

2.4 添加 API 权限

  1. 左侧菜单 → ManageAPI permissions
  2. 点击 + Add a permissionMicrosoft GraphDelegated permissions/委派的權限

📸 截图:选择 Delegated permissions

  1. 在搜索框中依次搜索并勾选以下四项:

    offline_access
    User.Read
    Mail.ReadWrite
    Mail.Send
    

    搜索一项 → 勾选 → 搜下一项,不要一次性全打进去。

image.png

  1. 点击 Add permissions 确认最终会有这些权限

image.png

Microsoft OAuth 凭据完成! 记好你的:

  • Microsoft Application (client) ID
  • Microsoft Client Secret Value

填入懒猫并验证

3.1 填入安装参数

回到懒猫微服,在 RetroMail 的安装或重新配置页面找到以下参数:

参数填入内容
Gmail OAuth Client ID从 Google 复制的 Client ID
Gmail OAuth Client Secret从 Google 复制的 Client Secret
Microsoft OAuth Client ID从 Microsoft 复制的 Application (client) ID
Microsoft OAuth Client Secret从 Microsoft 复制的 Client Secret Value
Microsoft Tenant填入 consumers

两项 Gmail 参数必须同时填写才会启用 Gmail 连接;三项 Microsoft 参数同理。
如果你只需要其中一种邮箱,另一个留空即可。

Microsoft Tenant 怎么填?

你想连接什么账号Tenant 填什么
个人 Outlook/Hotmail/Liveconsumers
组织账号 + 个人账号common
仅限某个组织该组织的 Tenant ID 或域名

完成后点击保存,等待 RetroMail 重启。

3.2 连接邮箱

  1. 打开 RetroMail,进入 设置邮箱账户
  2. 点击 连接 Gmail连接 Microsoft
  3. 浏览器会跳转到 Google 或 Microsoft 的官方登录页 —— 选择你要连接的邮箱账号
  4. 在权限确认页点击 允许 / Accept

注意,如果是 Google 配置在 production 模式,登陆后会提示"Google hasn’t verified this app" 此时需要选择无视风险继续访问 :)

如果是微软邮箱,应该只会提示应用未验证,道理都是一样的
image.png

  1. 自动回到 RetroMail,系统开始建立同步基线
  2. 进入 设置运行诊断,确认账户状态和同步进度

连接多个邮箱:重复 3.2 步即可 —— 在设置页再次点击连接,选择不同账号授权。
不需要创建新的 OAuth 凭据。


遇到问题?

错误常见原因解决办法
redirect_uri_mismatch回调地址不完全一致逐字核对 https、域名、路径、斜杠
Gmail 7 天后要重新登录项目处于 Testing 状态在 Google Auth platform 发布为 Production
微软提示需管理员批准组织租户策略限制联系管理员批准那四项权限
Client Secret 无效复制了 Secret ID 而非 Value回到控制台创建新 Secret,重新复制 Value

评论

0

暂无评论

说点什么呢~
收藏
0
0
0