我需要有关如何在AWS凭据过期后更新凭据的建议.
我以这种方式创建一个AmazonSimpleEmailService的Bean:
@Bean
public AmazonSimpleEmailService getSesClient() {
return AmazonSimpleEmailServiceClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(new STSAssumeRoleSessionCredentialsProvider.Builder("ses-role-us-west-2", "mail-sender")
.build()
.getCredentials())
)
.withRegion(Regions.US_WEST_2).build();
}
但当我try 使用它时,我收到一个错误:
The security token included in the request is expired (Service: AmazonSimpleEmailService; Status Code: 403; Error Code: ExpiredToken
个
如果我在每次发送邮件之前创建一个SES客户端实例-它可以正常工作,但在每次使用之前创建一个新实例看起来不是一个好做法.
我理解我通过STSAsSumeRoleSessionCredentialsProvider获得的凭据的问题-它们只是有到期时间.
我想知道是否应该有一种方法来自动更新凭据,当它们即将到期,所以我真的很感激任何关于如何做到这一点的建议.