我有一个现有的Rails应用程序,它使用Devise进行身份验证 . 我一直在使用Ember-CLI-Rails和Simple Auth添加Ember应用程序 . 一切都很好 .
但我现在有一个额外的复杂功能,即第三方组织希望能够使用LTI / OAuth自动注册/登录用户 - 这样他们就可以直接从他们的应用程序跳转到我们的应用程序而无需注册或登录,然后以登录用户身份开始在我们的应用程序中工作 .
如果能够将所有这些组合在一起并且工作的话,我无法绕过我的脑袋?
我正在考虑将登录/会话移回Rails的可能性?或者我可能在Simple Auth中有多个auth类型?等等
任何关于此的想法或建议都非常感谢!
1 回答
你可以roll your own Oauth piggybacking on Devise
提供的示例适用于Facebook,但您将使用this Omniauth strategy
基本上你需要做的是构建自己的Oauth 2.0 Omniauth策略,将Omniauthable函数(来自Devise)添加到用户,扩展自己的自定义回调控制器,以及从Oauth握手中读取数据的自定义用户构造函数 .