我已经由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为每个请求提取最新的凭证?
答案 0 :(得分:0)
传递整个Aws::InstanceProfileCredentials
可以解决此问题
Searchkick.aws_credentials = {
credentials: Aws::InstanceProfileCredentials.new,
region: 'us-west-2',
}