woshidan's loose leaf

ぼんやり勉強しています

AWSのCLIで各種リソースやサービスにアクセスするためにIAMでアクセスキーを発行する

AWSのAthenaクライアント aws-sdk-athena を使ってみようとしたら、Athenaクライアントは aws cli を利用していて、これを利用するために IAMAWSアカウントにアクセスするユーザを作る必要があったので手順メモ。

ちなみに IAMIdentity and Access Management だそうです。

事前準備

まず、事前準備としてルートアカウントの多要素認証(MFA)を有効化します。

MFAって多要素認証の略なんですね。なるほどです。

IAMユーザの作成

次にAWSの各種サービスにアクセスするためにIAMユーザを作成します。 IAMユーザを作成するにあたって、Webの画面からアクセス可能か、CLIからアクセスできる可能か、あるいは両方可能かを最初に設定します。

f:id:woshidan:20170929143416p:plain

f:id:woshidan:20170929143437p:plain

グループの作成・設定

IAMユーザを作成したあとは、そのユーザが所属するグループを設定します。 IAMではユーザーの権限をグループ単位で設定し、グループ単位で権限を設定する際には権限に関する設定が書かれたポリシーをいくつ採用するか、といった方式を用います。

f:id:woshidan:20170929143708p:plain

f:id:woshidan:20170929143724p:plain

f:id:woshidan:20170929143739p:plain

なお、AthenaのCLIで結果をS3のバケットに書き込む場合(必須)、上記以外に書き込み先のS3のバケットへの読み書きの権限もいります(一敗)。

完了

確認画面で内容をもう一度確認したら「ユーザー作成」ボタンを押して完了です。

f:id:woshidan:20170929143752p:plain

f:id:woshidan:20170929143821p:plain

なお、シークレットアクセスキーはユーザー作成時かアクセスキーID発行*1時しかできないので注意しましょう。

*1:一応これは後からいつでもすぐできます