当前位置: 首页 > 知识库问答 >
问题:

发送电子邮件时,如何提供亚马逊SES服务的AWS密钥?

亢仰岳
2023-03-14

文档中说您需要在主目录中有一个“共享凭证文件”,但这对生产不起作用!那么在发送电子邮件时如何指定AWS密钥呢?它没有给出任何例子!

https://docs.aws.amazon.com/ses/latest/DeveloperGuide/examples-send-using-sdk.html

此代码示例假设您已经为Java安装了AWS SDK,并且已经创建了共享凭据文件。

  AmazonSimpleEmailService client = 
      AmazonSimpleEmailServiceClientBuilder.standard()
      ...
  client.sendEmail(request);

他们的参考留档甚至不包含Amazon SimpleEmail ServiceClientBuilder

https://docs.aws.amazon.com/search/doc-search.html?searchPath=documentation-向导

共有1个答案

法风畔
2023-03-14

如果您使用的是EC2或Lambda或任何AWS IAM角色支持服务,安全的方法是创建一个可以访问SES的角色并将其附加到资源。您不需要维护任何凭据。https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#create-iam角色

以下链接提供了向java程序提供凭据的不同方法https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html

如果你想在你的计划中给予

AWSCredentialsProvider credentialsProvider = new AWSCredentialsProvider() {
    @Override
    public void refresh() {}
        @Override
        public AWSCredentials getCredentials() {
        return new AWSCredentials() {
            @Override
            public String getAWSSecretKey() {
                return "YOUR_SECRET_KEY";
            }
            @Override
            public String getAWSAccessKeyId() {
                return "YOUR_ACCESS_KEY";
            }
        };
    }
};

AmazonSimpleEmailService client = AmazonSimpleEmailServiceClientBuilder.standard()
            .withCredentials(credentialsProvider).build();
 类似资料:
  • 我试图使用与这里完全相同的代码:https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-using-smtp-java.html我更改了。但是我不能发送电子邮件。这两封电子邮件都已添加并验证了Amazon SES。 我正在使用邮件依赖项: 日志: 问题在哪里?

  • 我试图通过亚马逊SES设置一个电子邮件队列,以确保我可以同时发送多封电子邮件(每秒限制为14封电子邮件)。 我总是收到错误的信号 电子邮件未发送。错误消息:在上执行“发送电子邮件”时出错https://email.us-west-2.amazonaws.com"; AWS HTTP错误:客户端错误:导致了一个响应:发件人签名o(截断…)签名desnotmatch(客户端):我们计算的请求签名与您提

  • 我正在尝试使用Amazon SES发送电子邮件。我在地区工作过,刚刚把我的地区切换到,我无法向我的个人gmail账户发送电子邮件。我已经从地址验证了的

  • 我正在尝试使用php中的amazon SES sendmail()函数在邮件中发送pdf附件。我写了一个函数,它以MIME类型作为内容并发送邮件。但我无法在邮件中发送附件。文件路径和所有其他值看起来都很完美。 功能代码如下: 邮件已成功发送给用户,但没有附件。请帮忙。

  • 我们已将电子邮件服务从Mandrill更改为Amazon SES。我们将它与SMTP一起使用。 在Mandrill中,我们可以访问一些详细信息,例如: 邮件的原始内容 交货日期 是收件人查看的邮件 是否点击了邮件中的链接 但是在

  • 我正在尝试使用AmazonSDK发送电子邮件。NET和SES。我有一封由特殊信件组成的电子邮件,例如: ęxąmplę@źćż。通用域名格式 对于域部分,我阅读了关于Punycode的文章,这很好用。但对于地址的本地部分,我似乎找不到解决方案:我尝试对整个电子邮件使用RFC 2047编码,但SES返回“missing final@domain”错误,因此我尝试只对本地部分进行编码,因此电子邮件将是