6
1

IAMユーザーにMFA登録しましょう!!【Microsoft Authenticator、WinAuth】

Posted at

はじめに

こんにちは、itayaです。
この度、ANGEL Calendarの企画に参加しております!
記事一覧は下記のOrganizationアカウントの一覧をチェックしてみてください!

導入

皆様、IAMユーザーにMFAは登録されているでしょうか?

(〇)セキュリティ的にOKな例
MFA有効化_修正版.png

(×)セキュリティ的に見直すべき例
MFA無効化_修正版.png

もし、MFAが有効化になっていない場合は見直しましょう!
以下にMicrosoft Authenticator又はWinAuthを用いてMFAを有効化するやり方を記載していきます。

IAMとは

AWS IAM(AWS Identity and Access Management)のことです。主に、AWSリソースへのアクセスを制御できるサービスです。IAMは、AWSアカウントの認証と認可を制御するために重要であることを覚えておきましょう。(IAMを適当に設定すると、権限制御の考え的に良くないです、、)

MFAとは

MFA(Multi-Factor Authentication)のことです。
認証の際に、安全性を高めるために2つ以上の要素を組み合わせる手法です。
MFAのメリットとして、
・なりすまし、パスワード漏洩リスクを軽減があげられます。
※多要素認証により、フィッシング等によるパスワードの漏洩、なりすましのリスクを軽減できます。

MFA登録のやり方(Microsoft Authenticatorを用いる場合)

Microsoft Authenticator

iPhoneのApp Store等からインストールできる以下のアプリを使用してMFA登録を行います。

アプリ_修正版.png

MFA登録

IAMの「ユーザ」から、自分のユーザ名を選択>「セキュリティ認証情報」タブを表示
「MFAデバイスの割り当て」を押下する

MFAデバイス登録_修正.png

MFA device nameのデバイス名に適当な名前を入力
MFA deviceは認証アプリケーションを選択し、「次へ」ボタンを選択する。

MFAデバイス_修正.png

以下のような画面になりましたらMicrosoft Authenticatorを起動してください。
ここからスマホでの作業になります。
QRコード_修正後1.png

アプリ画面右上の "+" ボタンをおす
ホーム画面_修正版.png

「その他 (Google、Facebook など)」をえらぶ
アカウントを追加_修正版.png

AWSコンソールに表示されている、QRコードを読み込む
画面に表示されるワンタイムパスワードコードをAWS側の画面に入力する。
QRコード_修正後2.png

こちらで登録完了です!!!

MFA登録のやり方(WinAuthを用いる場合)

WinAuth

WinAuth.exeを起動し「インストール」する
「Add」ボタンを押し、「Authenticator」を選択
winAuth_修正後.png

シークレットコードを入力し、「Verify Authenticator」ボタンを押す
※以下にシークレットコード表示の仕方を載せます。
winsuth_ホーム画面_修正版.png

「シークレットキーを表示」ボタンを押すと、シークレットコードが表示される
winAuth_シークレットキー_修正後.png

WinAuth上にMFAコードが表示されるので、それをAWS側の画面に入力する 
winsuth_ホーム画面_MFAコード_修正版.png

こちらで登録完了です!!

IAMの権限について(PowerUserAccess、IAMFullAccess、AdministratorAccess)

IAMの許可ポリシーによって自分自身でMFA登録ができるのか?が決まります。
具体的に、許可ポリシーがPowerUserAccess、IAMFullAccess、AdministratorAccessの場合どうなるか?説明させていただきます。

PowerUserAccessの場合「自分自身でMFA登録ができないため、AdministratorAccess権限の方が画面共有をしてPowerUserAccessの方のMFA登録を行う」
IAMFullAccessの場合「自分自身でMFA登録ができるため、自分のマネジメントコンソール画面からMFA登録を行う」
AdministratorAccessの場合「自分自身でMFA登録ができるため、自分のマネジメントコンソール画面からMFA登録を行う」

以下にポリシーで定義されている許可(JSON形式)について載せます。

PowerUserAccess権限
PowerUserAccessはIAMの権限自体がフルで入っていないため個々でMFAができないんだと思います。
PowerUserAccess_修正.png

IAMFullAccess権限
IAMFullAcceessのポリシーの詳細を見ると、IAMの権限が全部あるため、MFA作成できそうです。
IAMFullAcceess_修正版.png

AdministratorAccess権限
AdministratorAccessのポリシーの詳細を見ると、「全てのAWSアクションを全てのリソースに対して許可する」ことを意味し、事実上フルアクセスを提供しており、自分自身又は他のユーザのMFA登録もできそうです。

AdministratorAccess_修正版.png

PowerUserAccess権限の方のみ、自分自身でMFA登録できないですね。。
ここは注意が必要です!
また、AdministratorAccess権限の方は、他のPowerUserAccess権限の方のMFA登録ができるので、MFA登録の流れの理解は必須となります。

  1. PowerUserAccess
    概要: 多くのAWSリソースを管理・操作できる強力な権限を持っていますが、IAM関連の操作には制限がある。
    具体的な権限:
    IAMユーザーやグループの作成、削除、ポリシーのアタッチといったIAM管理操作ができない。
    それ以外のAWSリソース(EC2、S3、RDSなど)に対してはフルアクセス権限を持っている。

  2. IAMFullAccess
    概要: IAMに関する操作ができる権限。
    具体的な権限:
    IAMユーザー、グループ、ロール、ポリシーの作成・管理・削除が可能。
    他のAWSリソースに対する権限は含まれていない。

  3. AdministratorAccess
    概要: AWSアカウント内の全てのリソースに対するフルアクセス権限を持つ最も強力な権限。
    具体的な権限:
    すべてのAWSリソース(IAMを含む)に対する完全なアクセス権限を持ち、制限なく操作可能。

簡単なまとめ

MFA

Microsoft AuthenticatorがインストールできるならMicrosoft Authenticatorを活用してMFA登録しましょう!!
Microsoft Authenticatorが難しいなら、WinAuthでMFA登録しましょう!!

IAMの権限

PowerUserAccess: IAM以外のリソースにフルアクセス。IAM管理は不可。自分自身でMFA登録するのは無理!!
IAMFullAccess: IAM関連のフルアクセス。他のAWSリソースにはアクセス不可。
AdministratorAccess: すべてのリソースにフルアクセス。最も強力な権限。

参考

6
1
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
6
1