【AWS S3】AWS Access Key Id you provided does not exist in our records エラー【Rails AWS EC2】
エラー内容
本番環境(EC2)で画像投稿(carrierwave)をしようとすると、下記のようなエラーが起きる。
表示されている(読み込まれている)AWSAccessKeyIdは以前使用していた古いキー。
エラー文から古いアクセスキーが読み込まれているため整合性が取れず起きたエラーと判断した。
エラーに対するTRY
- .bash_profileの更新
- .envファイルの確認
- .awsディレクトリ以下の確認(config,credentials)
- aws configure の確認
- AWS IAMによりポリシー等の確認
.bash_profileでexportしていたアクセスキーIDが確かに古いものであった。
それを新しいアクセスキーに更新し、.envファイルやIAM、aws configure listを確認し、最新のアクセスキーIDに更新されたことを確認したが、画像を投稿すると同じエラーが生じる。Dockerを利用しているため、古いイメージなどを消去するも、変化なし。
$ aws configure list
AWS Access Key ID [None]: AKIA...(新しいアクセスキー)
AWS Secret Access Key [None]: KEY...(新しいアクセスキー)
Default region name: ーーー
Default output format: json
解決方法
途方に暮れていたところ、
「EC2で不具合が起きた時はまずEC2インスタンスを再起動させよ」という先人の言葉をふと思い出した。
「あぁ、これが正解だ」と思った。恐らく、EC2インスタンスを再起動させないと上手く読み込まれない。EC2インスタンスからexitでログアウトし、再ログイン(ssh)ではダメだった。
EC2インスタンスを再起動させると予想通り解決し、正常に画像を投稿できた。
学び
AWS CLIにより、ターミナルから古いキーを新しいキーに変更した場合は必ずEC2インスタンスを再起動させる!
AWSアクセスキーID等は最新なのに私と同じようなエラーが起きるという方はまずは使用しているEC2インスタンスを再起動させてみてください。
Author And Source
この問題について(【AWS S3】AWS Access Key Id you provided does not exist in our records エラー【Rails AWS EC2】), 我々は、より多くの情報をここで見つけました https://qiita.com/tomoyuki_kt/items/a5cab11979f3eca9cb52著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .