はじめに
AWSルートアカウントもIAMアカウントと同様に複数のMFAデバイスが割り当て可能であるため、1つのAWSルートアカウントを複数人で共同管理(もちろん原則、必要最小人数で)できます。
MFAデバイスの故障や、AWSルートアカウントの管理者が不在、連絡がつかない等により、AWSルートアカウントを必要な時に使えないシーンを軽減する設計が可能となりますね。
※まだMFAデバイスが1つしか割り当てができない頃は、どのデバイスに割り当て、どのように誰が管理するか頭を悩ませていました
今回の検証ではスマートフォンやハードウェアトークンを必要人数分用意できない場合や、セキュリティ要件等で特定の作業PCしかインストールできない制約がある場合などを想定し、Windows上で利用可能なデスクトップアプリケーションであるWinAuthを利用してみました。
手順
手順前提:WinAuthはインストール済みとして手順説明します
すでに仮想MFAが1つ割り当てられている状態ですが、2つめの仮想MFAの割り当ても1つめと同手順のため、このまま進めていきます。
デバイス名を入力(今回はWinAuth)して「Authenticator app」を選択、「次へ」を押下します。
スマートフォンのアプリケーションを利用する場合は「QRコードを表示」からカメラで読み取って設定を進めますが、WinAuthの場合は「シークレットキーを表示」を押下して表示されるキーを利用します。
WinAuthを起動して、「Add」⇒「Authenticator」を押下します。
Nameを入力(今回はAWS)して「1. Enter the Secret Code for your authenticator...」の箇所に本手順3で表示したシークレットキーを入力します。
AWS側の画面に戻って、WinAuthで表示されるMFAコードを2回入力して「MFAを追加」を押下します。
正常に登録が完了し、下図の一番下に追加したWinAuthが表示されています。
最後に追加した2つめの仮想MFAでログイン確認を行って終了です。参考までに下図はWinAuthのワンタイムパスワードの表示画面です。
おわりに
今回は「個人AWSアカウントのMFAデバイスが故障したら面倒だな。」と思い「バックアップ的にもう1つ仮想MFAデバイス紐づけておくか。」という流れで、WinAuthの使用感を試してみたのですが、ビジネス面でもデスクトップアプリケーション型の仮想MFAデバイスの方が要件上適する場合はありそうだなと思いました。
小ネタでしたが、誰かのお役に立てばと思います。