我正在开始一个新的应用程序我想与Google Apps集成。
我希望让用户通过他们的Google帐户登录,并访问其域名的Google API(列出所有域用户,并允许他们登录并共享相同的数据)。
我从来没有这样做,所以我有点困惑我需要执行哪些步骤才能做到这一点,我已经在网上阅读了一些文档,我还看了一下omniauth。
要求:
在我看来,我需要做的就是: *集成OpenID客户端(例如omniauth) *当用户确认Google会将用户重定向到我的应用程序的回调 *我现在有一个可用于查询谷歌API的令牌
我是对的吗? 我还查看了this article,但似乎并非我正在搜索的内容,我事先无法知道用户域是什么。
也许我将gmail帐户与谷歌应用帐户混淆,使用后者,用户是否可以使用自己的帐户登录,或者他们都只共享整个域的一个帐户?
omniauth
是完成此类登录的正确宝石吗?
谢谢!
答案 0 :(得分:5)
Omniauth就是答案。我写了gem that provides a rake task to bootstrap所有的宝石,路线,控制器等,以获得针对谷歌进行身份验证的应用。宝石让您开始使用日历API,但其他谷歌应用程序以类似的方式工作。
答案 1 :(得分:0)
你非常正确。用户将拥有其Google帐户的SSO,并且在获得批准后,将从您在Google API中设置的回调重定向回来。
您需要使用omniauth-openid
gem,如果需要,请设置列入白名单的域名。
答案 2 :(得分:0)
OmniAuth将成为您通过第三方认证并满足您要求的最佳选择。你试过试试吗?