前提
AWSのIAM払い出しが完了し、初めてのログイン
環境
Windows10
インストールしたもの一覧
- Google ChromeにAuthenticator
- AWS-CLI(AWSCLIV2.msi)
- python(python-3.9.0-amd64.exe)
MFA有効化までの手順
- AWSにログインしIAMのページへ
AWS内でIAMで検索しても辿り着ける - IAM->ユーザ->
自分のユーザ
に行く - 認証情報タブ->コンソールのパスワードで管理をクリック
コンソールへのアクセス:有効化
パスワードの設定:カスタムパスワード
を選択し、新パスワードを入力する - Google ChromeにAuthenticatorをインストールする
- 認証情報タブ->MFAデバイスの割り当てで管理をクリック
QRコードの表示と拡張機能からQRコードの読み込みを行う
MFAコードを入力
1分後のMFAコードを入力
ブラウザをシークレットウィンドウでひらき、AWSコンソールにログインできることを確認する
ローカルでMFA有効化とCLIが使えるようにする
-
AWS-CLIをインストールする
AWSCLIV2.msi -
pythonをインストールする
python-3.9.0-amd64.exe -
認証情報タブでアクセスキーの作成をクリック
作成されたアクセスキーIDとシークレットアクセスキーを表示し、メモしておく。 -
コマンドプロンプトを立ち上げる
-
cloud{ホニャララ}という名前のプロファイルを作成するため、以下のコマンドを実行する
aws configure --profile cloud{ホニャララ}-long-term
-
メモしてあるアクセスキーとシークレットアクセスキーを入力する.
例:
AWS Access Key ID []:アクセスキーを入力
AWS Secret Access Key []:シークレットアクセスキーを入力
Default region name []:ap-northeast-1を入力
Defult output format [None]:何も入力せずエンター
-
%USERPROFILE%¥.aws
にエクスプローラーで移動する -
credentialsに追記する
aws_mfa_device = arn:aws:iam::**********:mfa/{ユーザ名}
※認証情報タブ->MFA デバイスの割り当てに記載されているID -
credentialsの先頭に
[cloud{ホニャララ}]
の行を追記する
例:[cloud{ホニャララ}] [cloud{ホニャララ}-long-term] aws_access_key_id = {アクセスキー} aws_secret_access_key = {シークレットアクセスキー} aws_mfa_device = arn:aws:iam::**********:mfa/{ユーザ名}
毎回実行(ローカルでCLI作業前に実行)
- コマンドプロンプトで環境変数を設定
set AWS_PROFILE=cloud{ホニャララ}
set MFA_STS_DURATION=43200
※プロキシ環境の場合、以下も必要
set HTTP_PROXY=http://{ID}:{PASS}@{プロキシサーバアドレス}:{ポート}
set HTTPS_PROXY=http://{ID}:{PASS}@{プロキシサーバアドレス}:{ポート}
※GitBashでも実行できるのでGitBashの場合は ~/.bashrcなどにexportで上記4つを書いておけば起動時に設定されてて楽になった 1. コマンドでMFAの認証コードを入力すると、~/.aws/credentialsに一時アクセスキーとトークンが設定されたプロファイルが生成・更新される `aws-mfa --profile cloud{ホニャララ}` 例:
[cloud{ホニャララ}]
assumed_role = False
aws_access_key_id = {アクセスキー}
aws_secret_access_key = {シークレットアクセスキー}
aws_session_token = {トークン}
aws_security_token = {トークン}
expiration = {更新日時}
[cloud{ホニャララ}-long-term]
aws_access_key_id = {アクセスキー}
aws_secret_access_key = {シークレットアクセスキー}
aws_mfa_device = arn:aws:iam::**********:mfa/{ユーザ名}