概要
AWS Quicksightだけを利用できるユーザーを作成する事例を通して、任意の権限を持つIAMユーザーの作成方法をメモしておきます。AWSの画面上で直接操作するため、Identity Centerで管理するユーザーとして追加します。
項目 | 内容 |
---|---|
取り扱う内容 | • AWSのユーザー/グループ/許可セットの作成と割り当て • 作成したユーザーによるサインインと、権限の検証 |
想定読者 | • AWSのユーザー作成・管理を行う人 |
ゴール | • QuickSightの利用権限付与を事例に、あるユーザー/グループがサービスを利用するための設定手順を理解する • AWSのユーザー/グループ/許可セットの関係と構成イメージを把握する |
以下、東京リージョンでの設定・URL貼付しているので、必要に応じてリージョンは読み換えてください。
マネジメントコンソールへのサインイン
ルートユーザー(またはIAM作成権限を持つユーザー)で、マネジメントコンソールにてサインインする。
(有効化していない場合)Identity Centerを有効化する
IAM Identity Centerにて、Identity Centerを有効化します。
有効化する範囲を選択します。基本的に左で良いですが、要件次第で特定のAWSアカウントのみ有効化する場合は右を選択します。
カスタムパーミッションセット(許可セット)の作成
Identity Center上で、対象AWSサービスの利用が可能な権限の定義を作成します。
許可セットの新規作成を開始する
ポリシーを定義する
ポリシーの定義を行います。マネージドポリシーからチェックボックスで選択してもよいし、今回のようにインラインポリシーからJSON形式で指定してもよいです。
今回の例ではAWS QuickSightを有効化するので、以下の通り定義します。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"quicksight:*"
],
"Resource": "*"
}
]
}
後続の画面で名称やタグ付けなど必要な情報を付与して、許可セットを保存します。
参考:ユーザーとグループ、許可セットの構成イメージ
グループ単位で権限を管理する場合、別途グループも作成しておきます。ユーザー/グループ/許可セットの組合せは少々複雑ですが、簡単に整理すると、、
実現したい構成:
- 仮に、AWSを利用するユーザーを「管理者」「開発者」の2名とする
- いずれも、QuickSightおよび開発データのS3バケットを利用できる
- 管理者のみ、契約関連のS3バケットを利用できる
作成/構成イメージ:
ポイントは、各サービス/リソースへのアクセス可否は許可セットにて定義し、それをユーザーまたはグループに割り当てることで、最終的にユーザーがアクセスできるものが決まる点。
後述の設定手順では内容をシンプルにするためにQuickSightの権限付与のみ扱いますが、複数のサービスに対してユーザー別にアクセス権の制御を行いたい場合、上図を参考に設定していきます。(何か不足あれば追記していきます)
ユーザー/グループ作成
グループの作成を行う際、メールアドレスの登録を行う部分がユーザーの割り当てに変わる以外は、ユーザー作成時と同様の手順になります。以下、グループ作成を行う場合は、ユーザーと表記している部分をグループに読み換えてください。
ユーザー/グループの新規作成
IAM Identity Center > ユーザー > ユーザーを追加 から、ユーザーを追加します。Eメールアドレスやユーザー名など記載する欄があるので、入力して追加します。ユーザーの検証方法はメールアドレスへの仮登録メール送信、もしくはワンタイムパスワード生成から選択できます。
ユーザー/グループをAWSアカウントへ割り当て
作成したユーザーを、AWSアカウントへ割り当てます。 IAM Identity Center > AWSアカウント > アカウント名 > ユーザーとグループの割り当て から、前項で作成したユーザーをAWSアカウントへ割り当てます。もしグループ単位で権限管理を行うのであれば、ユーザーはAWSアカウントに割り当てず、代わりに該当ユーザーをAWSアカウント割当済みのグループに追加します。
作成済の許可セットがある場合リストアップされるので、これも割り当てます。もしグループ単位で権限管理を行うのであれば、ユーザーには許可セットを割り当てず、代わりに該当ユーザーを許可セット割当済みのグループに追加します。
作成したユーザーによるサインイン
前項の作業終了後、IAM Identity Centerダッシュボードに表示された、AWSアクセスポータルを作成したユーザーに共有し、クリックしてもらいます。
アクセスポータル サインイン画面
以降、すべての操作は作成されたユーザーにて行います。サインイン画面には、ユーザー名を入力います。続く画面で、パスワードの設定・入力を行います。
アクセスポータル
AWSアカウントを開き、許可セット名に張られたリンクをクリックします。
ホーム画面が表示されます。権限がないサービスはアクセス拒否となっていますね。
アクセス権のないサービスを利用できないことを確認
試しにS3バケットを新規作成しようと試みると、権限が無いためエラーになることが確認できます。
アクセス権のあるサービスを利用できることを確認
今回の事例ではQuickSightの権限を付与されているので、画面上部の検索バーからQuickSightを検索・遷移します。
QuickSightのダッシュボードが利用できれば、設定作業完了です。