跳转到内容

Proyecta Auth

内置用户身份验证。支持邮箱和 Google 登录,并具备基于角色的访问控制。

Proyecta Auth 为你构建的应用处理用户身份验证。用户点击登录或注册后,Proyecta Auth 页面会以弹窗形式打开(默认行为),他们选择偏好的登录方式完成验证后,即可返回你的应用并保持登录状态。

方式 可用范围
Google 所有套餐
邮箱(一次性验证码) 所有套餐

直接告诉 AI:

Add user authentication to my app with Google and email login.
Show a profile menu in the header when the user is signed in.

启用身份验证并不会从头手写一套登录系统。登录页面、OAuth 回调处理程序以及身份验证状态 hook(AuthProvider / useAuth)已随应用模板内置提供。身份验证是一项你激活的能力:当你提出请求时,Proyecta 会为你的应用配置好 auth 客户端、设置登录配置,并呈现预构建的登录 UI(例如,在页头显示用户头像菜单)——你得到的是经过测试的完整模板流程,而非临时拼凑的路由。

打开你应用自带的 管理面板 → Members,即可查看所有已登录用户并管理其访问权限。(Builder 原有的 Users 标签页已并入应用的管理面板。)

每个应用都内置了一套角色系统,共三个级别,按权限从低到高排列:

  • User — 任何已登录的普通用户(所有登录者的默认角色)。
  • Staff — 对管理面板操作部分拥有更高权限。
  • Admin — 完全访问权限,包括管理其他人的角色。

你可以在应用的 管理面板 → Members 中管理每个人的角色——在此处提升或降低权限,服务端会强制执行所有角色检查。第一位管理员是你在创建应用时指定的邮箱地址(参见管理面板)。这些功能无需你自行构建——每个应用都已内置。

我可以使用自定义的身份验证提供商来替代 Proyecta Auth 吗?

Proyecta Auth 是内置的身份验证提供商,也是官方支持的方案——它为你处理登录、OAuth 回调和会话管理。将任意第三方 auth SDK 接入生成的应用目前不受支持(构建系统会屏蔽服务端 auth 包,例如 NextAuth 和 Supabase Auth)。通过你自己的身份提供商实现企业级 SSO 已在路线图中——参见 SSO & SAML

我可以在应用内部完成登录流程,而不跳转页面吗?

默认生成的应用采用基于弹窗的登录流程——Proyecta Auth 页面在弹窗中打开,而不会替换当前页面。完整的重定向登录流程同样受支持,可以向 AI 提出请求。

我可以隐藏某些登录方式吗?

暂时不支持。所有已启用的登录方式均会对用户显示。选择性展示功能即将推出。

如果用户收不到 OTP 邮件怎么办?

请检查垃圾邮件文件夹,尝试其他登录方式或邮箱地址,或联系你的 IT 团队将 proyecta.devnotifications.proyecta.dev 加入白名单。

我可以以某个用户身份登录来提供支持吗?

暂时不支持。请使用基于角色的访问控制来构建管理员视图,从而查看用户特定数据。

  • 登录页面品牌定制 — 自定义颜色、Logo 和布局,以匹配你的应用品牌风格
  • Microsoft OAuth — 支持使用 Microsoft 账号登录
  • SAML / SSO — 企业级单点登录(计划在 Studio 套餐中提供)
  • 短信 OTP — 通过短信发送一次性验证码
  • 邮箱 / 密码 — 传统账号密码登录,并支持密码重置流程
  • 更多 OAuth 提供商 — GitHub、Apple 等
  • 选择性登录方式 — 自定义登录页面上显示哪些登录方式
  • 用户模拟登录 — 以某个用户身份登录,用于调试和支持