【问题标题】:How to check using python boto3 if AWS account is in sandbox mode for SES如果 AWS 账户处于 SES 的沙盒模式,如何使用 python boto3 检查
【发布时间】:2022-01-13 01:59:05
【问题描述】:

我正在用 Python 编写一个 Lambda 函数,它将使用 AWS SES 发送电子邮件。

但是,在我的测试 AWS 账户中,我不想向真实用户发送电子邮件。

所以我想进行这样的检查,

如果 Account_Status = SANDBOX,则向预先验证的默认收件人发送电子邮件。 (例如公司内部电子邮件地址)

如果 Account_Status = PROD,则向真实用户的电子邮件地址发送电子邮件。

但我在 ses 客户端中找不到任何相关的 boto3 方法,它可以给我帐户状态。

我尝试了response = client.get_account_sending_enabled(),但即使帐户在沙箱中,它也会返回true..

【问题讨论】:

    标签: amazon-web-services boto3 amazon-ses amazon-simple-email-service


    【解决方案1】:

    您可以改用 sesv2 api,它在get_account() 函数的响应中直接定义了一个标志。

    client = boto3.client('sesv2')
    response = client.get_account()
    print(response['ProductionAccessEnabled'])
    

    来自文档:

    ProductionAccessEnabled(布尔值)--

    表明您的帐户在 当前的亚马逊网络服务区域。

    如果值为 false ,则您的帐户在沙箱中。什么时候 您的帐户在沙箱中,您只能发送电子邮件到已验证 身份。此外,您可以发送的最大电子邮件数量 24 小时周期(您的发送配额)为 200,最大数量 您每秒可以发送的电子邮件数(您的最大发送速率)为 1。

    如果值为 true ,则您的帐户具有生产访问权限。什么时候 您的帐户具有生产访问权限,您可以向任何地址发送电子邮件。 您账户的发送配额和最大发送速率因人而异 根据您的具体用例。

    【讨论】:

    • 谢谢。这有帮助。
    猜你喜欢
    • 1970-01-01
    • 2017-02-28
    • 2014-11-20
    • 2018-07-29
    • 2017-04-20
    • 1970-01-01
    • 2014-08-28
    • 1970-01-01
    • 2020-09-07
    相关资源
    最近更新 更多