📖

AWSのIAMユーザーのMFAにパスキーを設定する際はユーザー名が同じだと上書きされる?

2024/08/29に公開
2

AWSのMFAとしてパスキーが利用できるようになったので、これは便利とパスキーに移行していたのですが、一部のアカウントでパスキーが利用できなくなるという現象に遭遇。。。
あれ?と思い、保存されているパスキーを確認したところ、設定したはずのパスキーの数が足りない。。。
よく見るとパスキーはドメインとユーザー名のセットで保存されているようで、ユーザー名が同一だったために上書きされた模様。(推測になりますが。

※2024/08/29時点の情報になります。

※2024/11/22 追記
コメントで情報頂きました。
arn:aws:iam::<アカウントID>:user/<IAMユーザー名>の形に修正されたようで、本現象は解消されているようです。

AWS用に保存されたパスキーを確認

AWSのパスキーを確認してみると、

パスキーはaws.amazon.comというドメインと、ユーザー名のセットで保存されている。
ルートユーザーに設定したパスキーはarn:aws:iam::アカウントID:rootのようになっているので重複はしないようですが、IAMユーザーに設定したパスキーはユーザー名のみで登録されるみたいです。

今回パスキーが利用できなくなったのは、同じシステム用に開発、検証とアカウントIDが別でユーザー名は同じというもの。

環境 アカウントID ユーザー名
開発環境 700000000001 user1
検証環境 700000000002 user1

イメージとしてはこんな感じ。
これの開発環境のユーザーにパスキーを設定し、利用できることを確認。
その後、検証環境のユーザーにパスキーを設定し、利用できることを確認。
そして再度、開発環境のAWSマネコンにログインしようとしたら、パスキーが無いと。。。
開発環境用が検証環境用のパスキーで上書きされた?という流れです。

※ユーザー名が同じでも違うパスキーとして扱うようにもできたはずではありますが。
 ↑これは、ユーザー側の設定ではなく、システム側の設定です。
 なので、ユーザーとしてはどうにもできないはず。

そのうち修正されるように気はしますが、ご注意ください。
無事修正されたようです。

Discussion

hrkohrko

同じ問題で悩んでおり、AWSサポートにIssueを投げておいたのですが、今日試したところパスキーのユーザー名が arn:aws:iam::<アカウントID>:user/<IAMユーザー名> の形式に変わってました🎉
これで、別アカウントで同一IAMユーザー名を使っていても、端末側でパスキーが上書きされないはずなので、安心してパスキーを使えますね。

playreeplayree

おぉ、情報ありがとうございます!
これでパスキーに移行できます。