【问题标题】:How to store OAuth data如何存储 OAuth 数据
【发布时间】:2014-12-16 13:11:47
【问题描述】:

我们有几个 oauth2 提供商,人们可以通过(twitter、facebook 等)进行授权。现在我们通过“provider/id”将数据存储在数据库中。问题是:我们希望有可能为一个用户使用多个 oauth2 提供程序,即用户可以通过 facebook 授权,然后通过 twitter,这将是我们数据库中的一个用户。 我们考虑了相关的表,比如 oauth_users_info 或类似的东西,我们将在其中存储 facebook_id、twitter_id 等字段,并在授权后使用它。 这是一个好的做法还是你可以提出更好的建议?我害怕以后可能会导致一些问题的陷阱。

【问题讨论】:

    标签: ruby-on-rails oauth authorization


    【解决方案1】:

    实际上,您可能想要创建Identity 模型,关联到User 模型。 User 可以有很多 Identities 像 facebook、twitter 等。你的身份模型会像,

    Identity(id: integer, uid: string, provider: string, user_id: reference)
    

    【讨论】:

      猜你喜欢
      • 2014-12-08
      • 2013-04-07
      • 2015-05-23
      • 2017-10-21
      • 2021-09-20
      • 2019-03-21
      • 1970-01-01
      • 2011-06-27
      • 1970-01-01
      相关资源
      最近更新 更多