【问题标题】:How to avoid connecting two different webapp accounts with one social account如何避免将两个不同的 webapp 帐户与一个社交帐户连接起来
【发布时间】:2012-08-08 01:17:50
【问题描述】:

我正在使用 Spring Social 将用户应用程序帐户连接到社交帐户(Facebook 和/或 Twitter)。

事实证明,有可能两个不同的用户帐户连接到同一个社交帐户。

例子:

  • 我的 webapp 中的 User1 与 Facebook 帐户 #1 连接
  • 我的 webapp 中的 User2 与 Facebook 帐户 #1 连接

这现在是可能的。看起来这发生在 Spring Social 内部。 之后,两个帐户都无法使用社交帐户登录。

我想避免在 User2 尝试连接时将同一个社交帐户连接到不同的 webapp 用户。任何提示我该怎么做都非常感谢!

【问题讨论】:

    标签: spring spring-social


    【解决方案1】:

    here 提供了此问题的答案。 代码示例here

    简而言之,ConnectController 必须使用 ConnectInterceptor 来检查现有连接并删除当前正在创建的连接(如果它是重复的)。

    【讨论】:

      【解决方案2】:

      如果您使用的是 spring social 提供的默认连接控制器,则在获取用户令牌/秘密后,它将存储在数据库中。存储在数据库 spring-social 用途:

      • org.springframework.social.connect.jdbc.JdbcConnectionRepository
      • org.springframework.social.connect.jdbc.JdbcUsersConnectionRepository

      在存储到数据库之前,您可以验证项目并提供您自己的逻辑。

      希望这会有所帮助!

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-10-19
        • 1970-01-01
        • 1970-01-01
        • 2015-05-07
        • 2015-03-02
        • 1970-01-01
        • 2013-09-17
        相关资源
        最近更新 更多