如何生成OAUTH2用户标识?

时间:2017-08-01 02:36:23

标签: mysql oauth-2.0 passport.js

我一直在学习使用Passport.js使用Facebook和Google登录,这里是他们提供的典型用户对象:

{
    id: "1234567",
    displayName: "John Smith",
    name: {
        familyName: "Smith",
        givenName: "John"
    }

    // emails, photos, etc.
}

现在,我试图了解id字段是如何生成的,以及它们在不同的登录提供程序中是如何唯一的。它似乎不是一个UUID。

用户将id作为主键保存到MySQL数据库中;我正在尝试实施常规用户名/密码登录,因此我需要自己生成id个。

1 个答案:

答案 0 :(得分:0)

多年前,Facebook和Google ID一直没有用。你不应该使用该ID作为真实的"或UUID标识符。

是的,你是对的,你必须生成自己的ID,并保存其他"外部"如果您想要SSO,请使用ID。对于你自己的id,我推荐你一个简单的PK自动增量id。 Take care of this is you need to scale it

如果你必须暴露自己的身份证,你需要拥有自己的"外部" id,also take care of the security requirements of this

最后,OAuth2没有说明有关用户ID格式的任何内容。

最佳!