通过身份验证功能,开发者只需用简单提示词说清楚需求,扣子 AI 就能给你的 Web 应用、移动应用构建一套完整的用户注册、登录和管理系统。
扣子编程提供身份验证能力,可以为你的应用添加一套账号权限系统。你仅需通过简单的提示词,即可为 Web 应用、移动应用加上登录、注册、用户管理等功能。
核心功能如下:
以下操作将消耗你的扣子积分。
集成身份验证后,用户访问你的应用时,必须先注册账号并完成登录。
开发应用时,扣子 AI 会通过你的需求描述,接入身份验证功能;你也可以手动为应用添加身份验证功能。
扣子 AI 自动集成
输入自然语言,包含用户管理、用户登录、用户管理系统等关键词,例如:
帮我集成用户登录能力
手动添加
扣子 AI 是调用 Supabase 技能来接入身份验证能力,接入完成后,你可以继续与扣子 AI 对话,修改登录配置。例如:
用户可以先访问主页,不需要强制登录
支持手机号登录
扣子编程提供了一个内置的用户管理界面,便于你查看和管理该应用的所有用户。
注意
删除用户后,该用户将无法登录应用,该操作不可逆,请谨慎操作。
集成身份验证能力时,扣子会生成默认的登录页面,你还可以根据品牌和业务需求,自定义登录页面的图标和名称。
扣子编程会为每个应用创建一个数据库,用于存储用户数据,你可以在数据库的 auth schemas 中,找到 users 数据表,进行查看。数据库的详细说明请参考集成数据库能力。
|
安全特性 |
说明 |
|---|---|
|
环境数据隔离 |
扣子编程数据库支持为你的应用创建并维护两份独立的用户数据表。
|
|
行级安全策略 |
系统默认会为所有表开启行级安全策略(RLS),默认仅允许用户读写自己的数据。为避免数据泄露风险,请勿关闭 RLS 以及请勿设置公开读写的 Policy。更多信息,请参考@行级安全。 |
查看 users 数据表的操作步骤如下:
users 数据表的字段说明如下表所示:
|
字段 |
说明 |
|---|---|
|
id |
用户身份的唯一标识。 |
|
is_sso_user |
是否为 SSO 单点登录用户。 |
|
is_anonymous |
是否匿名用户。 |
|
instance_id |
实例 ID。 |
|
aud |
受众声明,JWT 令牌的目标受众。 |
|
role |
数据库角色,用于 RLS 权限控制。 |
|
|
用户邮箱地址。 |
|
encrypted_password |
加密密码哈希。 |
|
email_confirmed_at |
邮箱确认时间戳。用户邮箱完成验证的时间。 |
|
invited_at |
用户被邀请的时间。 |
|
confirmation_token |
邮箱验证令牌。 |
|
confirmation_sent_at |
验证邮件发送时间。 |
|
recovery_token |
密码重置令牌。 |
|
recovery_sent_at |
密码重置邮件发送时间。 |
|
email_change_token_new |
新邮箱的验证令牌。 |
|
email_change |
待确认的新邮箱。 |
|
email_change_sent_at |
换绑邮件发送时间。 |
|
last_sign_in_at |
最近登录时间戳。用户上次登录系统的时间。 |
|
raw_app_meta_data |
系统元数据(提供商、角色等)。 |
|
raw_user_meta_data |
用户自定义元数据。 |
|
is_super_admin |
是否为超级管理员。 |
|
created_at |
创建时间戳。用户账户创建的时间。 |
|
updated_at |
更新时间戳。用户信息最后一次修改的时间。 |
|
phone |
用户手机号。 |
|
phone_confirmed_at |
手机确认时间戳。 |
|
phone_change |
待确认的新手机号。 |
|
phone_change_token |
手机换绑验证令牌。 |
|
phone_change_sent_at |
手机换绑验证码发送时间。 |
|
confirmed_at |
最终确认时间戳。用户邮箱或手机号任一完成验证的时间。 |
|
email_change_token_current |
当前邮箱的验证令牌。 |
|
email_change_confirm_status |
邮箱换绑确认状态。
|
|
banned_until |
账号封禁截止时间。 |
|
reauthentication_token |
二次验证令牌(修改密码、换绑前校验)。 |
|
reauthentication_sent_at |
二次验证邮件、短信发送时间。 |
|
deleted_at |
软删除时间,不为空表示已删除。 |
用户数据存储在你扣子编程项目关联的专属数据库中,并由火山引擎提供企业级的安全防护。开发环境与线上环境数据物理隔离,确保了数据的独立性与安全性。扣子编程不会使用你的用户数据。
如果在应用的用户管理页面删除了用户,该操作不可逆。一旦用户被删除,其相关的认证信息将从数据库中被移除,该用户将无法登录应用,请谨慎执行删除操作。