1. Home
  2. Aws
  3. AWSアカウントへ多要素認証 (MFA) を導入する

AWSアカウントへ多要素認証 (MFA) を導入する

  • 公開日
  • 更新日
  • カテゴリ:AWS
  • タグ:AWS,IAM,MFA,Authy,GoogleAuthenticator
AWSアカウントへ多要素認証 (MFA) を導入する

AWS アカウントを作成したら、すぐにでも EC2 や RDS を立ち上げて色々とやってみたい衝動に駆られますが、ここはぐっとこらえて、まずは初期設定を行いましょう。セキュリティの面でも、はじめの一歩を堅実に踏み出すことが大事です。ここでは、AWS アカウントを作成した直後から、行っておきたい初期設定を紹介します。

root アカウントへ多要素認証 (MFA) の導入

root アカウントというのは、作成した AWS アカウントの事です。
AWS マネジメントコンソールへは、メールアドレスとパスワードのみでログインができてしまうのが現状です。
この場合、なりすましによってログインされてしまえば、勝手に自分のアカウントを使われてしまうなどのリスクが生じます。
そこで、多要素認証を導入して、よりセキュアに、セーフティにアカウント運用を行っていくことが大切です。
無料なので是非設定しておきたいところです。

多要素認証 (MFA) とは?

多要素認証 (MFA = Multi-Factor Authentication, 多段階認証・二段階認証ともいう) とは、通常のログインに加え、モバイル端末などを使い、認証用のコードを受信し、そのコードを入力する事でログインが完了する仕組みの事です。
仮にログインに必要なメールアドレスとパスワードが漏れてしまった場合でも、予め登録した端末でも認証を行う必要があるので、アカウントを乗っ取られない。という利点があります。

多要素認証の為のアプリをインストールする

AWS アカウントの多要素認証を導入する場合には、持っているスマートフォンへアプリをインストールする必要があります。
(キーデバイスによる認証もありますが、有料)
AWS の MFA ページ から詳細を確認できますが、iPhone や Android の場合は、「Google Authenticator 」もしくは「Authy 」というアプリをインストールする事で多要素認証を導入できます。

色々と調査した結果、 「Authy の方が、スマホを機種変更などをした際にも移行がスムーズであり、かつ、 複数端末でアカウントを共有出来るみたいなので、サブ機にも入れておけば尚、安心。」 という結論に至ったので、私は Authy をインストールしました。

多要素認証を導入する場合、アプリを入れている端末を紛失したり、 機種変の際にアプリのアカウントを解除しなかったりなどすると、 たちまち認証が行えなくなるので AWS にログインできなくなり、 かなり痛い事になりかねません。
セキュリティを強化する一方で、「自滅」というリスクを背負う事になるのですが笑、 そのリスクを少しでも解消できる道をと 考えて、複数端末でアカウントを共有出来る Authy を選択しました。
インストールの細かい手順はここでは割愛しますが、難しい事は何もないので、この先に進む前に、アプリのインストールとアカウントの作成を行っておいてください。(出来ればサブ機にも入れましょう。私は iPhone と iPad にインストールして共通のアカウントを設定しました。)

root アカウントに多要素認証を設定する

それでは早速、多要素認証を設定していきましょう。 まず、IAM のページを開きます。
左上の「サービス」をクリックし、サービス一覧を開いたら、中央下部「セキュリティ、 アイデンティティ、 コンプライアンス」にある「IAM 」をクリックします。

「ルートアカウントの MFA を有効化」を選択して、「MFA の管理」ボタンをクリックします。

「仮想 MFA デバイス」にチェックが入っていることを確認し、「次のステップ」ボタンをクリックします。

注意書きを読んで、「今後はこのダイアログボックスを表示しない。」にチェックを入れて「次のステップ」ボタンをクリック

多要素認証用アプリで QR コードを読み取り、表示された認証コード二つを入力し、「仮想 MFA の有効化」ボタンをクリックします。
まず表示される6桁の番号を「認証コード1」へ入力し、アプリ側が時間で番号が切り替わったら、再度その番号を「認証コード2」へ入力します。

入力が済めば、多要素認証の設定は完了です。

多要素認証の確認

それでは、設定が済みましたのできちんと多要素認証が行われるか試してみます。
一度ログアウトしてからログイン画面へアクセスします。
いつも通り、メールアドレスとパスワードを入力して「サインイン」ボタンをクリックします。

すると、MFA コードの入力を求められますので、モバイル端末側のアプリを起動し、コードを入力します。

無事にログイン出来ました。 MFA もきちんと導入されていましたね。

Author

rito

  • Backend Engineer
  • Tokyo, Japan
  • PHP 5 技術者認定上級試験 認定者
  • 統計検定 3 級