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

求助:Lambda中Boto3调用Cognito-IDP接口超时挂起问题

Cognito用户邀请API的Lambda函数超时问题

我正在开发一个邀请用户加入Cognito用户池的API,但调用对应的Lambda函数时出现挂起超时问题。已经尝试将Lambda内存提升至512MB、超时时间设置为5分钟,问题仍未解决。

函数代码

def cognito_register_user(user):
    print("sign up user: ", user["email"])

    try:
        aws_client = boto3.client('cognito-idp', region_name = "eu-west-2",aws_access_key_id="XXXXXX",
                                      aws_secret_access_key="XXXXXX")

        response = aws_client.admin_create_user(
UserPoolId="eu-west-2_XXXXX",
Username=user["email"],
UserAttributes=[{"Name": "email","Value": user["email"]},{ "Name": "email_verified", "Value": "true" },            {
                'Name': 'name',
                'Value': user["name"]
            },
            {
                'Name': 'family_name',
                'Value': user["family_name"]
            },],DesiredDeliveryMediums=['EMAIL'])
        print("response=", response)
        return response
    except:
        traceback.print_exc()
    return None

CloudWatch日志

2024-04-22T20:00:02.514+01:00   sign up user: XXXX@gmail.com

2024-04-22T20:05:32.468+01:00   2024-04-22T19:05:32.468Z 85f32ee0-d56b-4fff-a63d-ceffb9c76d1e Task timed out after 330.10 seconds 
排查与解决建议
  • 检查Lambda网络配置:如果Lambda部署在VPC内,需确保所在安全组和NACL允许出站访问eu-west-2区域的Cognito服务端点,或配置NAT网关/互联网网关提供公网访问能力。未部署在VPC的Lambda默认可访问公网,但VPC内的必须配置正确的网络出口。
  • 替换硬编码密钥为IAM角色:代码中直接写入AWS密钥存在安全风险,且可能导致凭证配置错误。给Lambda关联具备cognito-idp:AdminCreateUser权限的IAM角色,boto3会自动获取角色凭证,避免手动配置密钥引发的请求阻塞。
  • 优化异常捕获逻辑:当前except:捕获所有异常仅打印堆栈,建议明确捕获botocore.exceptions.ClientError并打印详细错误信息,判断请求是在连接阶段卡住还是Cognito服务返回异常。
  • 排查邮件发送环节:DesiredDeliveryMediums=['EMAIL']会触发Cognito发送邀请邮件,若SES配置异常(如未验证域名/邮箱、发送额度耗尽),可能导致Cognito处理请求时阻塞。可先移除该参数测试是否仍超时,排除邮件环节问题。
  • 本地测试Cognito API:使用相同凭证(或对应IAM权限)在本地调用admin_create_user接口,验证请求是否能正常返回,以此区分是Lambda环境问题还是Cognito服务/配置问题。

内容的提问来源于stack exchange,提问作者azy141

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 12:32:31