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

调用Step Function时出现SSL验证失败错误(_ssl.c:2426)求助

问题描述

以下是调用Step Function的代码:

def initiate_populate_qcreviewtable(data):
    # call "step function"
    client_step_function.start_execution(
        input=json.dumps(data), 
        stateMachineArn= "{arn of state machine}"
        )

在Lambda函数A(调用Lambda函数B)中执行上述代码时,触发SSL验证失败错误:

SSL validation failed for https://states.us-east-1.amazonaws.com/ EOF occurred in violation of protocol (_ssl.c:2426)

已尝试调整代码作用域,问题仍未解决。

解决方案建议
  • 检查Lambda的VPC网络配置
    如果Lambda部署在VPC内:

    • 若使用私有子网,需配置NAT网关让Lambda能访问公网;
    • 或者创建Step Functions的VPC端点(Interface类型),让Lambda无需公网即可直接访问服务。缺少上述配置会导致Lambda无法正常连接Step Functions的公网端点,引发SSL相关错误。
  • 更新AWS SDK版本
    旧版本的boto3(Python SDK)可能存在SSL协议兼容问题。在Lambda的依赖配置中指定最新版本的boto3,重新部署函数后重试。

  • 确认Step Function ARN与区域匹配
    确保代码中stateMachineArn的区域与Lambda函数所在区域一致。如果跨区域调用,需确认目标区域的Step Functions服务访问配置是否正确,避免因端点不匹配导致SSL验证失败。

  • 排查VPC防火墙/代理规则
    检查VPC的安全组、网络ACL是否允许Lambda向states.us-east-1.amazonaws.com的443端口发起HTTPS请求,避免流量被拦截导致连接异常。

  • 测试禁用SSL验证(仅用于排查,禁止生产环境使用)
    临时修改客户端初始化代码禁用SSL验证,验证是否为SSL证书相关问题:

    import boto3
    client_step_function = boto3.client('stepfunctions', verify=False)
    

    如果此方式能成功调用,说明问题根源在SSL验证环节,需重点排查前面的网络配置或证书问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 22:17:06