2015-03-02 25 views
0

我正在开发2个Grails应用程序 - A和B - 我想支持以下案例共享认证应用程式

  1. 如果用户拥有一个帐户,他们也可以使用它注册/登录B(与使用Twitter,Google等凭证登录/登录到http://stackoverflow.com几乎一样)。同样,如果用户拥有B帐户,则可用于注册/登录到A.
  2. 用户还可以选择在每个站点上使用单独的帐户,即他们不是强制使用其A证书在B上(反之亦然)
  3. 如果用户已经使用他们的A凭证向B进行认证(反之亦然),则建立两个站点之间的信任,允许A调用B的API来检索关于用户的附加信息。需要有一种机制,确保只有同意在两个站点之间共享认证数据的用户才能调用API。

理想情况下,我想使用基于标准的方法,例如,通过使每个站点成为OAuth消费者/提供者,但我不确定哪些标准是最相关的标准。如果有任何插件可以帮助我实施解决方案,那么知道这一点也很有用。

回答

0

我觉得Stormpath正是你所需要的:

  • 用户管理API不同的SDK:node.js的,快递,JAVA,休息,蟒蛇,烧瓶中。
  • 现成托管登录:登录,注册和密码重置。
  • 现成的ID站点跨应用程序的单点登录供电
  • API密钥的用户,HTTP基本认证或OAuth2用户
  • 社会登录安全:Facebook,谷歌,LinkedIn,Github上
  • 整合与四郎和春季安全
  • 集成了Active Directory和LDAP

子弹3号,你是在谈论SSO。你可以通过Stormpath和Shiro来实现。请read here

免责声明,我是Stormpath的贡献者。

相关问题