2012-08-10 67 views
0

我使用Spring Social将用户应用程序帐户连接到社交帐户(Facebook和/或Twitter)。如何避免使用一个社交帐户连接两个不同的webapp帐户

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

例子:

  • 用户1在我的web应用程序与Facebook帐户#1
  • 用户2连接在我的web应用程序与Facebook帐户#1

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

我想避免在User2尝试连接时将相同的社交帐户连接到不同的webapp用户。任何提示我怎么能这样做是值得赞赏的!

回答

1

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

总之,必须使用ConnectInterceptor来检查ConnectController是否存在连接并删除当前创建的连接(如果其重复)。

0

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

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

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

希望这会有所帮助!

相关问题