我已经通过elasticsearch.rb
初始化器使用以下aws_credentials进行设置。
Searchkick.aws_credentials = {
credentials: Aws::InstanceProfileCredentials.new.credentials,
region: 'us-west-2',
}
当我第一次重新部署时,此方法工作正常,但是在12小时后,我的凭据过期,并且最终出现了以下错误:
Elasticsearch::Transport::Transport::Errors::Forbidden ([403] {"message":"The security token included in the request is expired"})
鉴于我的一组凭据的有效期似乎为12小时,因此这是有道理的。
Aws::InstanceProfileCredentials.new.expiration = 2020-02-13 21:36:30 UTC
鉴于我想继续轮换凭证,我如何让Searchkick为每个请求提取最新的凭证?
最佳答案
传入整个Aws::InstanceProfileCredentials
可以解决此问题
Searchkick.aws_credentials = {
credentials: Aws::InstanceProfileCredentials.new,
region: 'us-west-2',
}
关于ruby-on-rails - Searchkick AWS凭证到期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60211747/