我创建了一个使用devise for auth的应用程序。如果我想创建一个在不同服务器上运行的完全独立的应用程序,是否有办法让它使用与第一个应用程序相同的auth系统?
本质:
System1 System2
------- -------
DB1 DB2
App1 App2
|-model1 |-another model
|-model2 |-yet another model
|-devise <- (Use this auth system)
这样,注册一个应用程序的用户就可以访问我开发的所有应用程序。
这在RAILS中可行吗?
答案 0 :(得分:1)
看看OAuth
。有了OAuth,您的第一个应用程序(具有Devise的应用程序)将充当提供程序。其他应用程序(客户端)将能够连接到提供商,登录&amp;授权,并最终交还给客户端应用程序。您可以拥有任意数量的客户端,用户只需要在提供商处拥有一个帐户。
有一些宝石让这一切变得简单,首先是Doorkeeper
(提供商;请参阅使用设计的示例应用 - doorkeeper-provider-app
)和OAuth2
(客户端)。