Как вы предоставляете ключи AWS сервису Amazon SES при отправке электронной почты? - PullRequest
0 голосов
/ 18 мая 2018

В документации сказано, что вам нужен «общий файл учетных данных» в вашем домашнем каталоге, но он не будет работать для производства!Итак, как вы определяете ключи AWS при отправке электронной почты?Примеры не приводятся!

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

В этом примере кода предполагается, что вы установили AWS SDK для Java и создали файл общих учетных данных.

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

Их справочная документация даже не содержит AmazonSimpleEmailServiceClientBuilder!

https://docs.aws.amazon.com/search/doc-search.html?searchPath=documentation-guide&searchQuery=AmazonSimpleEmailServiceClientBuilder&x=3&y=8&this_doc_product=Amazon+Simple+Email+Service&this_doc_guide=API+Reference&doc_locale=en_us#facet_doc_product=Amazon%20Simple%20Email%20Service&facet_doc_guide=API%20Reference

1 Ответ

0 голосов
/ 18 мая 2018

Если вы используете 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();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...