代码之家  ›  专栏  ›  技术社区  ›  Calaf

如何通过SES发送带有临时SES特定凭据的电子邮件?

  •  1
  • Calaf  · 技术社区  · 6 年前

    This 页面显示如何使用SES发送电子邮件。该示例通过读取 ~/.aws/credentials ,这是根(尚未“共享”?)凭据。

    获取临时凭据 使用 roles 作为一种选择被提到了 assume_role() 未为SES客户端对象定义。

    如何通过SES发送带有临时SES特定凭据的电子邮件?

    更新

    我的问题的上下文是在EC2实例上运行的应用程序。

    2 回复  |  直到 6 年前
        1
  •  0
  •   Olivier De Meulder    6 年前

    这其中有几条。

    AmazonSESFullAccess

    其次,你需要一个角色。而且,在控制台中也很容易完成。IAM-->角色-->创建角色。受信任的实体是AWS服务。突出显示EC2。在下一个屏幕中,选择要与此角色关联的策略。这是您在上面创建的策略。如果您的EC2已经有一个角色,那么您可以将IAM策略添加到此角色。将IAM策略分配给角色就是他们所说的信任策略。

    背景故事如下。任何对AWS服务的API调用都需要有密钥和机密。从本地计算机进行API调用时,可以使用个人密钥和密码(甚至根密钥和密码)。当您需要从另一个服务进行API调用时,您没有该密钥和密码。将凭据存储在EC2上既不安全也不实用。更糟的是,在S3桶里。这就是为什么AWS提出了 Role 概念。角色可以从名为简单令牌服务(STS)的内部服务请求临时凭据。例如,角色附加到EC2实例。如果该角色附加了正确的策略,那么EC2实例可以请求获取临时凭据,以便对另一个服务进行API调用。所有这些都发生在幕后。

        2
  •  1
  •   John Rotenstein    6 年前

    两种选择。。。

    你可以的 创建IAM用户 具有适当权限的凭据,并将其放入 ~./aws/credentials 文件。然后您的应用程序将找到它们并使用它们与amazonses连接。

    或者,您的应用程序可以使用一组 要调用的IAM用户凭据 assume_role() 担任\角色()

    IAM用户可用于 或者 应用。