基于Supabase配置与使用邮件服务
在应用开发中,可靠的邮件通知系统对用户注册、密码重置和邮箱确认等核心功能至关重要。云原生数据仓库AnalyticDB PostgreSQL版深度集成Supabase Auth身份认证体系,并在此基础上提供企业级邮件服务能力。开发者可以使用默认的阿里云邮件服务快速启动应用,或接入自定义SMTP服务器实现邮件服务。
前提条件
创建Supabase项目。已开通的云原生数据仓库AnalyticDB PostgreSQL版Supabase项目,创建时间需晚于以下日期:
中国地域:2025年09月04日。
新加坡:2025年08月29日。
说明实际支持的地域请以控制台显示为准。您可以登录Supabase Dashboard,查看左侧导航栏中是否存在Authentication>Sign In/Providers菜单选项,若存在,则代表支持项目所在地域。
已为云原生数据仓库AnalyticDB PostgreSQL版Supabase项目开通公网访问。
配置SMTP服务器
建议生产环境下使用自定义SMTP服务器,如需快速开始并测试邮件服务,可使用默认SMTP服务器。
自定义SMTP服务器
如果您正在使用Supabase Auth服务,并且需要使用以下功能,则需要设置自定义SMTP服务器来负责向用户发送邮件:
使用邮箱和密码创建账户。
免密账户(通过一次性密码Magic Link发送到邮箱)。
通过邮箱进行的用户邀请。
社交登录并进行邮箱确认。
配置方法
登录Supabase Dashboard,在Dashboard侧边栏单击Authentication>Emails。
开启Enable Custom SMTP配置自定义的SMTP服务器。

默认SMTP服务器
云原生数据仓库AnalyticDB PostgreSQL版Supabase默认配置了一个简单的SMTP服务器,支持自动给指定邮箱发送邀请和确认邮件,旨在帮助用户快速开始并测试邮件服务。
默认SMTP存在以下限制,因此不适合在生产环境下使用:
只能发送到限定的邮箱地址:由于地域原因,部分邮箱可能无法接收来自默认SMTP服务器的邮件。
严格的速率限制:默认SMTP服务对每个项目的邮件发送量存在限制,且该限制可能会随时调整。
无SLA保证:默认SMTP没有服务可用性保障,仅适用于探索和入门Supabase Auth,构建测试项目。
使用方式
开启邮件确认。
登录Supabase Dashboard,在Dashboard侧边栏单击Authentication>Sign In/Providers。
单击Email,打开Confirm email开关,并保存配置。

注册新用户。
通过Supabase Dashboard注册新用户
登录Supabase Dashboard,在Dashboard侧边栏单击Authentication>Users,单击右侧的Add user,您可以选择Create new User注册新用户。

通过URL调用注册接口
登录Supabase Dashboard,在Dashboard页面左上角单击Connect,然后在弹出窗口中单击App Frameworks,获取
SUPABASE_PUBLIC_URL和ANON_KEY。调用示例如下:curl -X POST 'http://<SUPABASE_PUBLIC_URL>/auth/v1/signup' \ -H 'apikey: YOUR_ANON_KEY' \ -H 'Content-Type: application/json' \ -d '{ "email": "example@email.com", "password": "testPassword" }'通过supabase-js注册新用户
supabase-js的安装与使用,请参见supabase-js。
const { data, error } = await supabase.auth.signUp( { email: 'example@email.com', password: 'testPassword', options: { data: { first_name: 'John', age: 27, } } } )