コーヒーが好きな木谷映見です。
改めまして、Windows クライアント端末で AWS CLI を使えるように準備します。
- AWS CLI のインストール
- AWS CLI 用の IAM ユーザーを作成
- Windows クライアント端末に IAM ユーザーのクレデンシャル設定
- Windows クライアント端末で AWS CLI コマンドを実行する
- 参考:Windows クライアント端末から AWS CLI をアンインストールする
AWS CLI のインストール
以下のドキュメントを参考に、手元の Windows クライアント端末に AWS CLI の最新バージョンをインストールします。
docs.aws.amazon.com
MSI インストーラを実行するのに、コマンドプロンプトを開いて msiexec コマンドを実行します。
msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi
実行結果
C:\Users\user>msiexec.exe /i https://awscli.amazonaws.com/AWSCLIV2.msi C:\Users\user>
別のウィンドウで AWS CLI インストールウィザードが開きます。
使用許諾契約書の条項の同意にチェックし、ウィザードに従って設定します。
今回はデフォルトでインストールしていきます。
インストールが完了したら、インストールした AWS CLI のバージョンを以下のコマンドで確認します。
aws --version
実行結果
C:\Users\user>aws --version aws-cli/2.9.6 Python/3.9.11 Windows/10 exe/AMD64 prompt/off C:\Users\user>
AWS CLI 用の IAM ユーザーを作成
手元の Windows クライアントから AWS CLI コマンドを実行して AWS リソースを操作するには、IAM ユーザーの権限が必要です。
AWS CLI 用の IAM ユーザーを作成し、手元の Windows クライアント端末に埋め込むクレデンシャル(アクセスキーとシークレットアクセスキーのペア)を作成します。
今回は AWS マネジメントコンソールから IAM ユーザーを作成します。
IAM コンソールで [ユーザー] - [ユーザーを追加] をクリックしてください。
ユーザー名は任意のユーザ名を入力し、[アクセスキー - プログラムによるアクセス] にチェックをつけてください。
アクセス許可の設定では、手元の Windows クライアント端末から AWS CLI で実行したい操作に必要な権限を付与します。
今回権限はお試しで AmazonEC2ReadOnlyAccess
をアタッチすることにします。
既存の IAM ユーザーのクレデンシャルを利用していただいても構いませんが、
IAM ユーザーのクレデンシャルは漏洩すると AWS 上のリソースを自由に操作できてしまうため、クレデンシャルの管理と付与する権限には十分注意してください。
IAM ユーザーが作成できたら、クレデンシャル(アクセスキーとシークレットアクセスキーの文字列)が記載されたファイルをダウンロードすることができます。IAM ユーザー作成時にしかダウンロードできませんので、忘れないようにしましょう。
Windows クライアント端末に IAM ユーザーのクレデンシャル設定
ダウンロードしたファイルの中身を確認して、aws configure を使用したクイック設定 を参考にWindows クライアント端末にクレデンシャル(アクセスキーとシークレットアクセスキーの文字列)を設定します。
次のコマンドを実行して、対話形式でアクセスキーとシークレットアクセスキーを設定してください。
aws configure
- 実行結果
C:\Users\user>aws configure AWS Access Key ID [****************XXXX]: XXXXXXXXXXXXXXXXXXXX AWS Secret Access Key [****************YYYY]: YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY Default region name [ap-northeast-1]: ap-northeast-1 Default output format [json]: json C:\Users\user>
今回デフォルトのリージョンは東京リージョン(ap-northeast-1)にしていますが、使用するシステムやユーザー居住地によってお好みのリージョンを指定してください。
アウトプット形式も基本 JSON でよいと思います。
設定したクレデンシャル情報は、AWS CLI をインストールしたユーザーのホームディレクトリの「.aws」の配下に、以下のように格納されます。
Windows クライアント端末で AWS CLI コマンドを実行する
それでは準備ができましたので、EC2 の情報を取得するコマンドを実行してみます。
describe-instances — AWS CLI 2.9.6 Command Reference
aws ec2 describe-instances
- 実行結果
C:\Users\user>aws ec2 describe-instances { "Reservations": [ { "Groups": [], "Instances": [ { "AmiLaunchIndex": 0, "ImageId": "ami-0eee6534cf84c69a5", "InstanceId": "i-0d14a7a8806820579", "InstanceType": "m5.large", "KeyName": "xxxxxxxxxx", "LaunchTime": "2022-12-12T04:02:05+00:00", "Monitoring": { "State": "disabled" }, : : :
表示できました。
ちなみに、PowerShell でも AWS CLI コマンドを実行できます。
参考:Windows クライアント端末から AWS CLI をアンインストールする
[コントロールパネル] - [プログラムと機能] - [AWS Command Line Interface v2] からアンインストールが可能です。
ユーザーディレクトリ配下の .aws
フォルダは残ってしまいますので、適宜削除してください。
それでは、よい CLI ライフを!
emi kitani(執筆記事の一覧)
AS部LX課。2022/2入社、コーヒーとサウナが好きです。執筆活動に興味があります。AWS認定12冠。