You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cognito AdminCreateUser场景下自定义邮件模板正文无法生效的问题求助

Cognito AdminCreateUser场景下自定义邮件模板正文无法生效的问题求助

各位好!我最近在做Cognito的自定义消息处理器,目的是通过AdminCreateUser创建新用户时发送完全定制的邮件。现在遇到个头疼的问题:自定义的邮件主题能正常发送,但邮件正文却不生效,Cognito固执地使用它自带的默认模板内容,我翻了半天文档也没找到原因,也不知道该怎么查Cognito这边的日志或者错误信息,实在没辙了来求助!

下面是我的Lambda处理器代码(核心逻辑都保留,省略了一些非关键的分支判断):

import logging, os

logger = logging.getLogger()
logger.setLevel(logging.INFO)

def replace_placeholders(message, attributes):
    for key, value in attributes.items():
        message = message.replace(f'{{{key}}}', value)
    return message

def validate_placeholders(message, required_placeholders):
    for placeholder in required_placeholders:
        if f'{{{placeholder}}}' not in message:
            raise RuntimeError(f"Missing required placeholder: {{{placeholder}}}")

def handler(event, context):
    # 临时日志,用来查看事件的完整内容
    logger.info("Event [START]: %s", event)
    
    user_attributes = event['request']['userAttributes']
    
    # 核心逻辑:针对AdminCreateUser的触发场景处理自定义邮件
    if event['triggerSource'] == 'CustomMessage_AdminCreateUser':
        # 从环境变量读取预先配置的自定义主题和正文模板
        custom_subject = os.environ.get('ADMIN_CREATE_USER_SUBJECT')
        custom_body = os.environ.get('ADMIN_CREATE_USER_BODY')
        
        # 验证模板是否包含必填的占位符
        validate_placeholders(custom_body, ['username', 'temporaryPassword'])
        
        # 替换占位符后赋值给response对象
        event['response']['emailSubject'] = custom_subject
        event['response']['emailMessage'] = replace_placeholders(custom_body, {
            'username': user_attributes['username'],
            'temporaryPassword': event['request']['codeParameter']
        })
    
    logger.info("Event [END]: %s", event)
    return event

我已经确认过Lambda的权限是足够的,而且从日志里能看到,event['response']部分确实已经正确设置了自定义的emailMessage内容,但Cognito就是不买账,还是发送默认的正文。有没有大佬遇到过类似的问题?或者有没有什么我漏掉的配置点?麻烦指点一下!

备注:内容来源于stack exchange,提问作者Justin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.16 11:09:33