Rails为两个应用程序使用一个auth系统

时间:2015-01-15 23:11:19

标签: ruby-on-rails devise

我创建了一个使用devise for auth的应用程序。如果我想创建一个在不同服务器上运行的完全独立的应用程序,是否有办法让它使用与第一个应用程序相同的auth系统?

本质:

System1     System2
-------     -------
DB1         DB2
App1        App2
 |-model1    |-another model
 |-model2    |-yet another model
 |-devise <- (Use this auth system)

这样,注册一个应用程序的用户就可以访问我开发的所有应用程序。

这在RAILS中可行吗?

1 个答案:

答案 0 :(得分:1)

看看OAuth。有了OAuth,您的第一个应用程序(具有Devise的应用程序)将充当提供程序。其他应用程序(客户端)将能够连接到提供商,登录&amp;授权,并最终交还给客户端应用程序。您可以拥有任意数量的客户端,用户只需要在提供商处拥有一个帐户。

有一些宝石让这一切变得简单,首先是Doorkeeper(提供商;请参阅使用设计的示例应用 - doorkeeper-provider-app)和OAuth2(客户端)。