如何在AWS Cognito中配置注册确认与重置密码的不同自定义邮件模板
AWS Cognito自定义注册确认/重置密码邮件模板操作步骤
你不需要修改SignUp、ForgotPasswordAPI本身,AWS Cognito用户池内置了两个场景独立的邮件模板配置项,直接在控制台调整即可,具体操作步骤如下:
1. 修改注册确认场景邮件模板(对应SignUp API触发的验证邮件)
- 进入AWS控制台,打开Cognito用户池管理页,选择需要调整的目标用户池
- 切换到「消息」标签页,找到验证消息板块
- 找到验证类型:注册确认对应的配置项,点击「编辑」
- 在邮件主题、正文编辑框中插入你的自定义跳转链接,可搭配Cognito内置占位符使用:
{####}是系统自动生成的验证码占位符,{username}是用户注册时填写的用户名占位符,示例模板参考:
你好{username},感谢注册我们的服务,请点击下方链接完成账号验证,你的验证码为{####}:
点击完成注册验证
- 你也可以直接把验证码作为参数拼接在跳转链接中,用户点击链接后可以直接自动填充验证码,示例链接格式:
https://你的自定义验证页域名/signup-verify?code={####}&username={username} - 保存修改即可,后续调用
SignUpAPI触发的验证邮件会自动使用该模板
2. 修改重置密码场景邮件模板(对应ForgotPassword API触发的验证邮件)
- 同样在目标用户池的「消息」标签页,找到验证消息板块
- 找到验证类型:找回密码对应的配置项,点击「编辑」
- 按需求修改邮件主题和正文,插入重置密码的跳转链接,同样支持
{####}、{username}占位符,示例模板参考:
你好{username},你正在申请重置账号密码,请点击下方链接完成密码重置,你的验证码为{####}:
点击重置密码
- 也支持把验证码拼接在链接参数中,示例链接格式:
https://你的自定义验证页域名/reset-password?code={####}&username={username} - 保存修改后,后续调用
ForgotPasswordAPI触发的密码重置邮件会自动使用该模板
3. 注意事项
- 如果你没有使用Cognito默认邮件发件服务,而是绑定了自定义SES发件域名/邮箱,需要先确保SES侧已经完成了域名/邮箱的验证,否则自定义模板邮件可能发送失败
- 模板中的
{####}占位符必须保留,否则Cognito无法自动插入生成的验证码,会导致模板校验不通过无法保存 - 如果需要更复杂的自定义邮件内容(比如插入图片、自定义CSS样式),可以配置Cognito的自定义消息Lambda触发器,在Lambda代码中动态生成完整的HTML邮件内容,覆盖默认模板
内容的提问来源于stack exchange,提问作者pmali
相关产品推荐
相关产品推荐

