首页 > 解决方案 > 我应该使用什么数据类型来保存 Oauth 提供者返回的唯一用户 ID

问题描述

我想将 Oauth 提供者在响应中返回的唯一用户 ID 存储在我的 SQL 数据库中。我看过一些帖子表明 varchar(128) 应该足够了。是否有任何提供者的用户 ID 扩展了此限制?我已经检查了一些更受欢迎的提供商的文档,如谷歌、Facebook 和 Github,但我似乎无法找到有关此用户 ID 大小的任何信息。

标签: oauthgoogle-oauthfacebook-oauthuserid

解决方案


OIDC 将声明定义sub

最终用户在发行方中的本地唯一且永不重新分配的标识符,旨在供客户端使用,例如 24400320 或 AItOawmwtWwcT0k51BayewNvutrJUqsvl6qs7A4。它的长度不得超过 255 个 ASCII 字符。sub 值是区分大小写的字符串。

所以最好使用 VARCHAR(255)。


推荐阅读