使用谷歌OAuth连接Gmail到Odoo¶
Odoo 与Google Gmail 的 OAuth 兼容。要从自定义域发送安全电子邮件,只需在 Google 的 Workspace 平台以及 Odoo 数据库的后端配置即可。该配置可通过使用个人电子邮件地址或自定义域创建的地址来实现。
小訣竅
有关更多信息,请访问` Google 文档<https://support.google.com/cloud/answer/6158849>`_,了解有关设置 OAuth 的信息。
在Google中设定¶
创建一个新的项目¶
要开始使用,请访问 `Google API 控制台<https://console.developers.google.com>`_。如果您有*Google Workspace* 账户,请使用该账户登录,否则请使用个人 Gmail 账户登录(该账户应与您要在 Odoo 中配置的电子邮件地址一致)。
然后,点击位于:guilabel:OAuth 同意屏幕
最右侧的:guilabel:创建项目"。如果该账户已创建项目,则:guilabel:`选择项目'下拉菜单右上方会出现 :guilabel:`新建项目
选项。
在:menuselection:新建项目
屏幕上,将:guilabel:项目名称
重命名为 Odoo
,并浏览 位置 。将 位置 设置为 Google 工作区组织。如果使用的是个人 Gmail 帐户,则将:guilabel:位置
设为 无组织。
点击:guilabel:创建
完成此步骤。
OAuth 同意屏幕¶
如果页面没有重定向到 OAuth 同意屏幕
。
在 用户类型 选项下,选择适当的 用户类型,然后再次点击 创建,最后将导航到 页面。
警告
个人 Gmail 帐户只允许使用**外部**用户类型,这意味着 Google 可能需要批准或添加*范围*。不过,使用*Google 工作空间*账户可以使用**内部**用户类型。
请注意,当 API 连接处于*外部*测试模式时,无需获得 Google 批准。该测试模式下的用户限制为 100 个。
编辑应用程序注册¶
Next we will configure the app registration of the project.
在 OAuth 同意屏幕 步骤中的 应用程序信息 部分,在 应用程序名称 字段中输入`Odoo`。在:guilabel:用户支持
电子邮件字段下选择组织的电子邮件地址。
接下来,在 添加域名 并输入 odoo.com
。
然后,在 开发者联系信息 部分中输入组织的电子邮件地址。如果项目有任何变更,Google 会使用此电子邮件地址通知该组织。
然后,单击:guilabel:保存并继续
按钮。然后,滚动到底部并单击 保存并继续 跳过:menuselection:范围
页面。
如果继续测试模式(外部),请通过点击 添加用户,然后点击 保存并继续 按钮,添加在 测试用户 步骤下配置的电子邮件地址。应用程序注册摘要将出现。
最后,滚动到底部并单击:guilabel:返回仪表板
以完成项目设置。
创建凭证¶
现在项目已建立,应创建凭证,其中包括 客户 ID 和 客户密钥。首先,点击左侧边栏菜单中的:guilabel:凭证
。
然后,点击顶部菜单中的 创建凭证 并从下拉菜单中选择 OAuth 客户 ID。
在:guilabel:
应用类型
下,从下拉菜单中选择:guilabel:网络应用程序
。在:guilabel:
名字`字段中输入`Odoo
。在 授权重定向 URI 标签下,单击 添加 URI 按钮,然后在:guilabel:
URIs
字段中输入https://yourdbname.odoo.com/google_gmail/confirm
。请务必用实际的 Odoo 数据库名称替换 URL 中的 yourdbname 部分。接下来,点击 创建 生成 OAuth 客户 ID 和:guilabel:
客户密钥
。最后,复制每个生成的值,以便以后在 Odoo 中配置时使用,然后导航到 Odoo 数据库。
设置Odoo¶
输入 Google 认证¶
首先,打开 Odoo 并导航至 应用程序 模块。然后,从搜索栏中移除 应用程序 筛选器,输入 Google
。安装名为 Google Gmail 的模块。
接下来,导航至:menuselection:设置-->常规设置
,在:guilabel:讨论`部分,确保选中:guilabel:`自定义电子邮件服务器`或:guilabel:`外部电子邮件服务器`复选框。这将弹出一个新选项:guilabel:`Gmail 认证`或:guilabel:`使用 Gmail 服务器
。然后,将相应值复制并粘贴到 客户 ID 和 客户密钥 字段,然后 保存 设置。
配置邮件外发服务器¶
要配置外部 Gmail 帐户,请返回到:guilabel:客户邮件服务器
设置的顶部,然后单击:guilabel:外发电子邮件服务器
链接。
然后,点击 新建 或 创建 新电子邮件服务器,并填写 名称, 描述 和电子邮件 用户名 (如果需要)。
接下来,点击:guilabel:Gmail OAuth 身份验证
或 Gmail (在:guilabel:通过以下方式验证
或 连接 部分下)。最后,点击 连接 Gmail 账户。
一个标有 Google 的新窗口将打开,以完成授权过程。选择正在 Odoo 中配置的相应电子邮件地址。
如果电子邮件地址是个人账户,则会弹出一个额外步骤,请单击 继续 以允许验证并将 Gmail 账户连接到 Odoo。
然后,点击:guilabel:继续
或 允许 Odoo 访问 Google 账户。之后,页面会返回到 Odoo 中新配置的外发邮件服务器。配置会自动在 Odoo 中加载令牌,并显示绿色标签:guilabel:Gmail 令牌有效
。
最后,输入:guilabel:测试连接
。此时会出现一条确认信息。现在,Odoo 数据库可以使用 OAuth 身份验证通过 Google 发送安全可靠的电子邮件。
谷歌OAuth常见问题解答¶
生产VS测试发布状态¶
选择 生产 作为 发布状态 (而不是 测试)将显示以下警告信息:
要更正此警告,请导航至 `Google API 平台<https://console.cloud.google.com/apis/credentials/consent>`_。如果 发布状态 为 生产中,请单击 返回到测试 以更正问题。
无新增测试用户¶
如果没有将测试用户添加到OAuth同意屏幕,则会出现403访问拒绝错误。
要纠正此错误,请返回 APIs & Services 下的 OAuth consent screen 并在应用程序中添加测试用户。添加您在 Odoo 中配置的电子邮件。
Gmail模块未更新¶
如果 Odoo 中的 Google Gmail 模块尚未更新至最新版本,则会弹出 已禁止 错误信息。
要纠正这一错误,请转到 Gmail
或 Google
并升级 Google Gmail 模块。最后,点击模块右上方的三个点,选择 升级。
应用类型¶
创建凭证(OAuth Client ID 和 Client Secret)时,如果为 应用程序类型 选择了 桌面应用程序,则会出现 授权错误。
要纠正此错误,请删除已创建的凭证并创建新凭证,在 应用类型 中选择 网络应用。然后,在 授权重定向 URI 下单击 添加 URI 并键入: https://yourdbname.odoo.com/google_gmail/confirm」,确保将 URL 中的 yourdbname 替换为 Odoo 数据库名称。