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

AWS AppRunner(VPC出站流量)无法连接AWS SES求助

AWS AppRunner接入VPC后SES连接超时问题排查

关于IAM权限

不需要额外IAM权限,但需根据SES调用场景确认细节:

  • 若FastAPI通过SMTP协议调用SES发邮件:IAM角色权限不作用于SMTP认证,必须使用AWS专门生成的SES SMTP凭证(从IAM用户创建,而非角色密钥)。当前的AmazonSESFullAccess仅覆盖SES API调用,不包含SMTP身份验证,这是常见误区。
  • 若代码通过SES API(比如boto3的send_email/send_raw_email)发邮件:现有AmazonSESFullAccess权限已足够,但要确认是否正确配置了SES的VPC接口端点(而非SMTP端点),且端点安全组允许AppRunner安全组的443端口访问。

关于子网路由表规则

需要根据调用场景调整路由表:

  1. SMTP协议场景:AWS SES无SMTP的VPC端点,AppRunner访问email-smtp.us-east-1.amazonaws.com的465/587端口必须通过NAT网关出站到公网。请确认:
    • 私有子网路由表中,0.0.0.0/0路由指向NAT网关(仅保留S3前缀列表指向VPC端点的路由,其余公网流量走NAT)。
    • AppRunner配置的VPC子网关联了该路由表。
  2. SES API场景:需配置SES的VPC接口端点(服务名称为com.amazonaws.<区域>.ses),此时路由表会自动添加指向该端点的路由,但要确保:
    • 接口端点安全组允许AppRunner安全组发起443端口的入站请求。
    • 私有子网路由表中,SES服务前缀(无官方前缀列表,可手动添加*.ses.<区域>.amazonaws.com路由指向接口端点ENI,或依赖接口端点自动路由)。

额外排查点

  • 确认AppRunner安全组允许出站访问465(SMTP)或443(SES API)端口。
  • SES沙箱环境下,必须验证发件人和所有收件人邮箱地址,否则会触发静默失败或超时。
  • 检查代码中的SES端点配置:用API时是否指定VPC端点域名;用SMTP时是否正确填写服务器地址和端口。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 04:45:12