Skip to main content

AWS CLIにMFA適用アカウントを作成・更新するためのツール

Project description

概要

AWS CLIをMFAの認証付きで利用する場合、少々手間がかかるので、 MFA認証済みのクレデンシャルを発行する手順を自動化するツールを作成。

MFA用プロファイルの新規作成とクレデンシャル情報の更新を行うことが可能です。 MFA用プロファイルの認証情報は有効期限12時間で設定しています。

依存するライブラリ一覧

  • boto3
  • PyInquirer

インストール方法

$ pip install aws-mfa-util

使い方

まず、動作の前提条件は下記です。

  • ~/.aws/credentialファイルが存在する
  • ~/.aws/credentialファイル内に適切なプロファイルが設定されている
  • ~/.aws/credentialファイル内に、適切なmfa_serialが設定されている

具体的には、下記のような設定が最低限必要です。 以降の説明は、testAというプロファイルが設定されている想定で記載します。

[testA]
aws_access_key_id=abcde1234
aws_secret_access_key=abcde1234
mfa_serial=arn:aws:iam::12345678:mfa/test1

MFA用プロファルを新規作成する

コマンドを実行します。

$ aws-mfa-util

すると、下記のような選択肢が表示されます。

$ aws-mfa-util
? 希望する処理を選択してください (Use arrow keys)
> MFA用プロファイルを新規作成
  MFA用プロファイルの認証情報を更新

新規作成する場合は、「MFA用プロファイルを新規作成」を選択し、Enterを押してください。 すると、下記の様に表示されます。

$ aws-mfa-util
? 希望する処理を選択してください MFA用プロファイルを新規作成
? MFA用に新規作成するプロファイルを選択してください (Use arrow keys)
> testA

今回はtestAというプロファイル1つしか設定していませんが、複数設定している場合は、複数のプロファイルが表示されます。 MFA用に新規作成したいプロファイルを選択して、Enterを押します。 すると、下記のように表示されます。

$ aws-mfa-util
? 希望する処理を選択してください MFA用プロファイルを新規作成
? MFA用に新規作成するプロファイルを選択してください testA
? ワンタイムパスワードを入力してください

マネジメントコンソールに入力しているワンタイムパスワードを入力します。 (Authyなどで表示するコードです) 入力後、Enterを押します。

$ aws-mfa-util
? 希望する処理を選択してください MFA用プロファイルを新規作成
? MFA用に新規作成するプロファイルを選択してください testA
? ワンタイムパスワードを入力してください 123456
MFA用プロファイルの新規作成が完了しました。

「MFA用プロファイルの新規作成が完了しました。」という表示が出ていれば、設定完了です。 testA-mfaという形で、既存のプロファイル名の末尾に、「-mfa」がついたプロファイルが新規作成されます。

既存のMFA用プロファイルの認証情報を更新する

コマンドを実行します。

$ aws-mfa-util

すると、下記のような選択肢が表示されます。

$ aws-mfa-util
? 希望する処理を選択してください (Use arrow keys)
  MFA用プロファイルを新規作成
> MFA用プロファイルの認証情報を更新

「MFA用プロファイルの認証情報を更新」を選択し、Enterを押します。 すると、下記のように表示されます。

$ aws-mfa-util
? 希望する処理を選択してください MFA用プロファイルの認証情報を更新
? 更新するMFAプロファイルを選択してください (Use arrow keys)
> testA-mfa

新規作成したMFA用プロファイルを選択し、Enterを押します。 すると、下記のように表示されますので、ワンタイムパスワードを入力し、Enterを押します。

$ aws-mfa-util
? 希望する処理を選択してください MFA用プロファイルの認証情報を更新
? 更新するMFAプロファイルを選択してください testA-mfa
? ワンタイムパスワードを入力ください 123456

最終的に、下記のように表示されていれば、更新は完了です。

$ aws-mfa-util
? 希望する処理を選択してください MFA用プロファイルの認証情報を更新
? 更新するMFAプロファイルを選択してください testA-mfa
? ワンタイムパスワードを入力ください 123456
MFA用プロファイルの認証情報更新が完了しました。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws-mfa-util-0.1.0.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

aws_mfa_util-0.1.0-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file aws-mfa-util-0.1.0.tar.gz.

File metadata

  • Download URL: aws-mfa-util-0.1.0.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.0

File hashes

Hashes for aws-mfa-util-0.1.0.tar.gz
Algorithm Hash digest
SHA256 04566d2e0fc3de9f6af5997ba45a67a9a0b86b1db72d753f14eaa3890d16a624
MD5 ccd6ae29ae0535412c63810bb6c6dbbf
BLAKE2b-256 4374ed714cb3fb713f2b4976f8f629c6b8a5b39fba2ae63556ed8f8cfd7b9917

See more details on using hashes here.

File details

Details for the file aws_mfa_util-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: aws_mfa_util-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.8.0

File hashes

Hashes for aws_mfa_util-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 580832b1256694980930ad92ec4ffead8a81e327ef5a4ce19ad93a75087a16ab
MD5 de1b60ab8f1dac355d4d13937772f9cf
BLAKE2b-256 a0668ed2065bdf8aeae6e36c7a43c20fef368401dcf192975c431d18d98f3e06

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page