DP

DepthPilot AI

System-Level Learning

Guided Build

Supabase Auth 实战接入

这一课不是教你做一个能点的登录页,而是教你把身份、回调、session、RLS 和产品权限真正接到一起。DepthPilot 的价值不在于复述官方文档,而在于给你一套可交付、可验收、可排错的账号链路 SOP。

最后要交什么

一个可注册、可登录、可退出、可邮箱回调、可证明 RLS 生效的账号系统。

真正的通过标准

不是页面显示“登录成功”,而是 callback、server helper、middleware 和数据库策略一起稳定工作。

我们的增值部分

这页把 build order、验收证据、排错顺序和交付模板都给你收成了可执行 runbook。

DepthPilot Summary

这节课真正教你的,是把登录能力变成账户系统

Supabase 文档会告诉你接口怎么接,但产品里真正决定成败的是账户链路是否闭合。DepthPilot 在这里强调的是:邮箱回调、session 刷新、RLS、页面权限和学习数据必须串成一套可以证明的系统。用户学完之后,应该能判断问题是出在回调、cookie、server session 还是数据库策略。

先闭合身份链路

  • 注册、回调换 session、登录、退出,必须先形成稳定闭环。
  • 只要邮箱回调和 session 还不稳,就不要急着扩更多业务逻辑。
  • 身份链路的真相在服务端,不在前端弹出的成功提示里。

再证明数据隔离

  • RLS 不是锦上添花,而是账户系统是否可信的底线。
  • 你要能证明用户只能访问自己的数据,而不是只看页面有没有报错。
  • 任何“登录成功但数据不对”的情况,都应先查策略和 server session。

最后接产品状态

  • 课程权限、学习面板、账单状态都要建立在身份链路已经可靠的前提上。
  • middleware 负责刷新 session,不负责塞满业务判断。
  • 真正的交付物是一个可审计的账户系统,而不是一个好看的 auth 页面。

DepthPilot build order

先配 Site URL 和 callback URL,再测注册登录;不要反过来。

先跑 migration 和 RLS,再测用户数据隔离;不要只看页面。

browser client 和 server client 必须拆开;middleware 只做 session refresh。

最后再做课程权限、学习进度和账户态联动。

Operator heuristics

登录成功但数据请求失败,优先看 RLS 和 server session,而不是先怀疑前端。

邮箱回调跳错域名,先查 Site URL、Redirect URLs、邮件里的 redirect_to。

如果某个页面偶发掉 session,先查 middleware 是否做了多余业务逻辑。

本地和线上一定分开测 callback,避免一边修 localhost 一边影响正式域名。

What proof you must keep

一条从注册邮件点回站内并完成 session 交换的验证记录。

一条已登录用户读取自己数据成功、读别人数据失败的 RLS 证据。

一张登录后账户页或学习面板状态变化截图。

一份你自己的 auth 排错顺序记录,证明你不是靠碰运气跑通。

DepthPilot auth runbook

先测注册和邮件回调,再测密码登录和退出。

再测未登录访问受限页是否正确跳转到 /auth。

然后测登录后数据库访问和学习进度同步。

最后才测多语言、结账、课程权限这些依赖账号状态的链路。

Search Cluster

把 Auth 教程放回工作流搜索路径里

用户通常不会直接搜你的内部术语,而是从 auth tutorial、workflow automation 这类高意图搜索进入。

参考附录

这些链接是信任来源,不是本课的主体。主体是上面的 build order、runbook、验收证据和交付物。

Supabase Auth 教程:Next.js 15、回调换 session 与 RLS 实战 | DepthPilot AI