aws loginコマンドが来たのでAWSのアクセスキーを削除したかったけど、やっぱり保留しました。
はじめに
AWS CLIにaws loginコマンドが実装されました。
このコマンドを使うとアクセスキーがなくてもAWS CLIを使用できます。つまりアクセスキーの発行が不要となるので、アクセスキーの漏洩という大きなセキュリティリスクを排除することが出来ます。
私の場合、仕事ではAWS IdCに移行済でアクセスキーは使っていないので影響はないかなと思ったのですが、よく考えたら個人用のAWSアカウントは普通にアクセスキーを発行していました。
この機会に削除しちゃおうと思います。
試す
credentialsファイル無しで aws cli を動作確認
認証情報をいきなり消すのは怖いので、一旦は移動にとどめておきます。
$ mv ~/.aws/credentials ~/.aws/credentials_backup
$ mv ~/.aws/config ~/.aws/config_backup
接続できなくなったことを確認します。
$ aws s3 ls
Your session has expired. Please reauthenticate using 'aws login'.
aws loginコマンドでログインしてみる
aws loginコマンドを打てと言われました。ので実行してみましょう。
$ aws login
AWS Region [us-east-1]: ap-northeast-1
configも移動させたらregionを聞かれましたね。無難に東京 ap-northeast-1 にしておきます。その後、ブラウザが開いたのでブラウザ上でサインインします。


サインイン完了の画面が表示されたら、コンソールに戻ります。ログインできたと思うので、適当にコマンドを実行します。
$ aws s3 ls
2025-11-04 19:47:21 amplify-xxxx
2025-11-05 04:23:34 amplify-yyyy
(以下略)
無事に実行できました。これは簡単!凄い!
Amplify Gen2のコマンドを試す
私の場合はよくamplify(gen2)を使うので、amplify cli(gen2)が通るのかも試しておきましょう
とりあえず、sandboxコマンドを打ってみます。
$ npx ampx sandbox
[InvalidCredentialError] Failed to load default AWS credentials
∟ Caused by: [CredentialsProviderError] Could not load credentials from any providers
Resolution: To configure a new Amplify profile, use npx ampx configure profile.
認証エラーになりました!!
Failed to load default AWS credentialsと書いてあるので、旧来の認証情報を使おうとしているけど、アクセスキーがないのでエラーになっていると思われます。
無駄だと思いますが、提示されたnpx ampx configure profileコマンドを実行してみます。
$ npx ampx configure profile
Profile 'default' already exists!
Follow the instructions at https://docs.amplify.aws/gen2/start/account-setup/
to configure Amplify IAM user and credentials.
既に設定済と言われますね。最初にconfigファイルも移動させましたが、aws loginコマンドで新規に作成されたようです。ただ、その新しい設定をampxは使えてなさそうです。
単純にamplify cliのバージョンの問題かもしれません。アップデートしましょう。
$ npx ampx -v
1.8.0
$ npm update @aws-amplify/backend @aws-amplify/backend-cli
$ npx ampx -v
1.8.0
最新でした!
結論
残念ながら、アクセスキーを消すのはまだ早いみたいです。
NCDC株式会社( ncdc.co.jp/ )のエンジニアチームです。 募集中のエンジニアのポジションや、採用している技術スタックの紹介などはこちら( github.com/ncdcdev/recruitment )をご覧ください! ※エンジニア以外も記事を投稿することがあります
Discussion