4
0

More than 3 years have passed since last update.

【AWS S3】AWS Access Key Id you provided does not exist in our records エラー【Rails AWS EC2】

Last updated at Posted at 2020-10-14

エラー内容

本番環境(EC2)で画像投稿(carrierwave)をしようとすると、下記のようなエラーが起きる。
スクリーンショット 2020-10-14 1.02.13.png

表示されている(読み込まれている)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インスタンスを再起動させてみてください。

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0