重定向URI不匹配Google OAuth或数据库访问被拒绝。

3
我已经获得了Google API的OAuth客户端ID和密钥。
我在Odoo中的Google OAuth提供者记录中设置了客户端ID。
我有适当的实时域名。当我尝试使用Google登录时,会出现Google登录屏幕。我输入适当的Google凭据,Google将我登录,然后尝试根据URL中指定的redirect_uri键重定向回我的Odoo实例。这是我遇到“redirect_uir_mismatch”错误的时间点。如果我打开一个新选项卡并转到Google,它会显示我已登录。
我尝试将Google OAuth注册中注册的'redirect_uri'与用于Google登录的url中的'redirect_uri'键进行匹配,两者相同。
我注册了以下redirect_uri:http://erp.mydomain.com/auth_oauth/signin。在登录Google时,URL中也有相同的URI键。但它会抛出“redirect_uri_mismatch”错误。
编辑:
我删除了客户端ID和密钥,并创建了新的进行测试,现在我的Odoo实例中出现以下错误:
“You do not have access to this database or your invitation has expired. Please ask for an invitation and be sure to follow the link in your invitation email.”
解决方案:
您需要将标志“auth_signup.allow_uninvited”设置为“True”。

有趣...在哪里可以将标志“auth_signup.allow_uninvited”设置为“True”?我解决了,而不需要更改任何标志。 - Bhavesh Odedra
@Odedra 它在“安全->技术->参数->系统参数”中。在你的情况下,是否创建了新用户? - Hardik Patadia
不,对于我的情况,我不这样做。我认为我们必须向用户发送重置密码邀请的电子邮件。然后用户将点击该链接,它将重定向到Odoo登录页面。在登录界面上,我们有一个名为“使用Google登录”的链接,需要单击该链接,并使用户登录Odoo系统。确保登录=用户的电子邮件地址。 - Bhavesh Odedra
@Odedra 当用户来重置密码并转到Google页面进行登录时,会登录到Odoo。那么他下次如何登录系统?他每次都要去Google吗? - Hardik Patadia
让我们在聊天中继续这个讨论 - Bhavesh Odedra
显示剩余5条评论
1个回答

1

是的,我也遇到了同样的错误,并通过配置出站电子邮件解决了问题。

如果未配置出站邮件服务器,则会出现像您现在面临的错误。

对于重置密码,Odoo系统将向用户发送电子邮件,因此系统必须配置出站邮件服务器。

请配置出站邮件服务器并再次进行测试。

注意:使用登录 = his/her_email_id@gmail.com 编辑用户数据

随后,点击 Google.com 登录

它会像魔法一样工作。

更多详情请参见:在 Odoo 8 中设置 Google Apps 身份验证

编辑:

是的,你是正确的 @Hardik

我们需要将标志“auth_signup.allow_uninvited”设置为“True”


我会检查并在这里回复。谢谢你的回复。 - Hardik Patadia
我尝试配置电子邮件服务器,但仍然显示“没有访问数据库或邀请已过期”的相同错误。问题在于这个东西在我的本地端是可以工作的。因此,我正在努力理解我错在哪里。 - Hardik Patadia
奇怪,它应该工作,另外你可以检查一下OAuth客户端ID。 - Bhavesh Odedra
我删除了client_id并生成了一个新的,但结果仍然相同。是否有一种在服务器端进行调试的方法,就像我们在开发过程中所做的那样?我想知道是否有任何逐步注册客户端ID的指南,以便我可以了解是否遗漏了任何要点。 - Hardik Patadia
我需要将“auth_signup.allow_uninvited”配置参数设置为“True”。我想我忘了。现在它可以工作了。 - Hardik Patadia

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接