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

如何为AWS SES账户设置单域名每日100封发信限制?

AWS SES 单域名/邮箱每日100封发送限制实现方案

由于AWS SES原生未提供单域名/邮箱维度的每日发送配额功能,可通过以下两种方案实现需求:

方案一:基于CloudWatch监控+Lambda自动管控

  1. 绑定配置集追踪发送行为
    创建SES配置集,将所有需要限制的域名/邮箱地址关联到该配置集。这样每一封从这些身份发送的邮件都会被CloudWatch捕获发送指标。
  2. 配置CloudWatch指标与告警
    基于SES的Send指标,按ConfigurationSet和SourceIdentity(发件域名/邮箱)维度拆分,创建每日发送量统计的指标数学表达式。设置阈值为100,当指标达到阈值时触发CloudWatch告警。
  3. 编写Lambda执行管控逻辑
    将告警触发目标设为Lambda函数,函数逻辑为:接收告警中的身份信息,调用SES的UpdateEmailIdentity API,将该域名/邮箱的发送状态设为禁用。同时添加每日凌晨自动恢复发送权限的定时Lambda任务,确保次日可正常发送。

方案二:发送前置校验(实时拦截)

如果需要在发送时实时校验并拦截超量请求,可通过以下步骤实现:

  1. 封装SES发送接口
    所有发送请求统一通过自定义API网关或Lambda函数转发,避免直接调用SES API。
  2. 添加发送量校验逻辑
    在转发函数中,用DynamoDB存储每个域名/邮箱的当日发送计数:
    • 每次发送前,查询对应身份的当日计数,若小于100则允许发送并递增计数;
    • 若计数达到100则直接返回错误,拒绝发送请求。
  3. 自动重置计数
    配置CloudWatch Events每日凌晨触发Lambda,清空DynamoDB中当日的计数数据。

注意事项

  • 方案一属于事后管控,可能存在少量超量发送(比如告警触发前的几秒);方案二可实现精准拦截,但需要改造现有发送流程。
  • 确保Lambda函数拥有足够的IAM权限:SES的修改身份权限、CloudWatch指标读取权限、DynamoDB读写权限(方案二)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 20:30:42