繁体   English   中英

OAUTH2用户ID如何生成?

[英]How is OAUTH2 user id generated?

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

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

    // emails, photos, etc.
}

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

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

几年前,Facebook和Google ID不再有趣。 您不应使用该ID作为“真实”或UUID标识符。

是的,您是对的,如果要使用SSO,则必须生成自己的ID,并且还必须保存其他“外部” ID。 对于您自己的ID,我建议您为PK使用一个简单的mysql autoincrement ID。 注意这一点,因为您需要扩展它

如果必须公开自己的ID,则需要具有自己的“外部” ID, 同时还要注意此的安全性要求

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

最好!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM