登录方式与会话机制:邮箱、OAuth、Magic Link 与匿名 Supabase Auth 支持多种登录方式,每种都有各自的适用场景与权衡。本节介绍最常用的四类——邮箱密码、第三方 OAuth、Magic Link(魔法链接)、匿名登录——并讲解它们如何与会话机制衔接。 一、邮箱与密码登录 最经典的登录方式:用户用邮箱注册并设置密码,之后用「邮箱 + 密码」登录。 适用场景:面向大众的通用应用,尤其是需要稳定账号体系的业务。 优点:认知门槛低,几乎所有用户都熟悉。 注意事项: 密码由 Auth 服务加密存储,应用层不应接触明文密码。 通常配合邮箱验证流程,确保邮箱真实有效。 建议启用密码强度策略与速率限制,防止弱口令与暴力破解。
Supabase Auth 支持多种登录方式,每种都有各自的适用场景与权衡。本节介绍最常用的四类——邮箱密码、第三方 OAuth、Magic Link(魔法链接)、匿名登录——并讲解它们如何与会话机制衔接。
最经典的登录方式:用户用邮箱注册并设置密码,之后用「邮箱 + 密码」登录。
邮箱密码登录可进一步与 Magic Link、MFA 等组合,提升体验与安全性。
用户无需在你的应用注册新账号,而是用已有的第三方账号(如 GitHub、Google、Apple 等)授权登录。
用户输入邮箱后,系统发送一封含「魔法链接」的邮件;用户点击链接即完成登录,全程无需密码。
Magic Link 本质上是「用邮箱所有权代替密码」,把认证转化为「你能收到这封邮件吗」。
用户输入手机号,系统发送短信验证码,用户输入验证码完成登录。
用户无需任何注册即可获得一个「匿名身份」,先把应用用起来;之后再绑定邮箱或第三方,升级为正式账号,且已有数据不丢失。
无论哪种登录方式,认证成功后系统都会签发令牌,并在客户端建立会话(session)。会话的核心组成:
客户端库通常会自动管理这套会话:登录后安全存储令牌,请求时自动附带令牌,过期时自动用刷新令牌续期。开发者多数时候只需关心「是否已登录」「当前用户是谁」。
| 场景 | 推荐方式 |
|---|---|
| 通用大众应用 | 邮箱密码 + Magic Link(可选) |
| 开发者工具 | GitHub 等 OAuth |
| 海外移动应用 | Google / Apple OAuth |
| 国内移动应用 | 手机验证码 |
| 工具/内容类(先试后注) | 匿名登录,后续升级 |
实际上这些方式可以并存——你可以同时开启邮箱、GitHub、Google,让用户自选。Supabase 会把它们关联到统一的用户体系。
邮箱密码、OAuth、Magic Link、手机验证码、匿名登录各有适用场景,可按需组合启用。它们在认证成功后都汇入同一套会话机制,由访问令牌与刷新令牌维持登录态。下一节我们深入令牌本身,理解 JWT 的工作原理与会话管理细节。