OAuth 登录不要把邮箱当作身份证

发布于 2026-05-03·阅读 7 分钟
OAUTH

邮箱是联系方式,不是稳定身份。Google 和 GitHub 的 provider subject 才是绑定 OAuth 账号的主键。

Provider subject 是不可替代的

同一个邮箱可能先被本地账号注册,也可能来自未验证的 OAuth 返回值。直接按邮箱合并会产生账号接管风险。

正确模型是存储 auth_provider 和 oauth_provider_id,并为二者建立唯一索引。邮箱只参与展示和冲突提示。

回调参数也需要统一入口

code、state、错误参数和 PKCE verifier 的解析应该在一个 helper 中完成。每个 provider 只传入 cookie 名称和文案,避免回调路由出现细微差异。

OAuthIdentityPKCE

评论区

登录后才能发表评论

去登录
0 条评论
暂无评论,快来抢沙发吧!