Authentication 在2个Grails应用程序之间共享身份验证

Authentication 在2个Grails应用程序之间共享身份验证,authentication,grails,oauth,Authentication,Grails,Oauth,我正在开发两个Grails应用程序-A和B-我希望支持以下用例 如果用户拥有a帐户,他们也可以使用该帐户注册/登录B(与使用Twitter、Google等凭据注册/登录B的方式大致相同)。类似地,如果用户在B拥有帐户,则可以使用该帐户注册/登录a 用户还可以选择在每个站点上使用单独的帐户,即他们不必在B上使用他们的A凭据(反之亦然) 如果用户已使用其a凭据向B进行身份验证(反之亦然),这将在两个站点之间建立信任,从而允许a调用B的API来检索有关该用户的其他信息。需要有一种机制来确保API只能为

我正在开发两个Grails应用程序-A和B-我希望支持以下用例

  • 如果用户拥有a帐户,他们也可以使用该帐户注册/登录B(与使用Twitter、Google等凭据注册/登录B的方式大致相同)。类似地,如果用户在B拥有帐户,则可以使用该帐户注册/登录a
  • 用户还可以选择在每个站点上使用单独的帐户,即他们不必在B上使用他们的A凭据(反之亦然)
  • 如果用户已使用其a凭据向B进行身份验证(反之亦然),这将在两个站点之间建立信任,从而允许a调用B的API来检索有关该用户的其他信息。需要有一种机制来确保API只能为同意在两个站点之间共享身份验证数据的用户调用
  • 理想情况下,我希望使用基于标准的方法,例如,使每个站点成为OAuth消费者/提供者,但我不确定哪些标准是最相关的标准。如果有任何插件可以帮助我实现解决方案,那么了解这些插件也会很有用。

    我认为这正是您需要的:

    • 具有不同SDK的用户管理API:node.js、express、java、rest、python、flask
    • 现成托管登录:登录、注册和密码重置
    • 现成的ID站点,支持应用程序的单点登录
    • 用户的API密钥,由HTTP Basic Auth或OAuth2保护
    • 社交登录:Facebook、谷歌、LinkedIn、Github
    • 与Shiro和Spring Security的集成
    • 与Active Directory和LDAP的集成
    在第三号子弹中,你指的是。你可以通过Stormpath和Shiro实现这一点。求你了

    免责声明,我是Stormpath的撰稿人