[英]How do you provide AWS keys to Amazon SES service when sending emails?
该文档说,您需要在主目录中有一个“共享凭据文件”,但这不适用于生产! 那么,如何在发送电子邮件时指定AWS密钥? 它没有给出任何例子!
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/examples-send-using-sdk.html
此代码示例假设您已经安装了适用于Java的AWS开发工具包,并且已经创建了共享凭证文件。
AmazonSimpleEmailService client =
AmazonSimpleEmailServiceClientBuilder.standard()
...
client.sendEmail(request);
他们的参考文档甚至都不包含AmazonSimpleEmailServiceClientBuilder
!
如果您使用的是EC2或Lambda或任何AWS IAM角色支持的服务,则安全的方法是创建一个有权访问SES并将其附加到资源的角色。 您将不需要维护任何凭据。 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html#create-iam-role
以下链接提供了为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();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.