1
3

QuickSightとIAM Identity Centerを利用したSSOの検証

Last updated at Posted at 2023-11-15

はじめに

今回は2023年8月14日に発表されたQuickSightのAWS IAM Identity Centerに関するアップデート内容の検証結果と検証環境構築の要所をご紹介いたします。

目次

  • アップデート内容について
  • そもそもAWS IAM Identity Centerってなに?
    • マルチアカウントの課題とSSO(シングルサインオン)
  • アップデート内容の図解
  • 検証の流れ
    • 環境構築
    • 検証
  • 検証結果
  • さいごに

アップデート内容について

Amazon QuickSight(以後QuickSightと記載する) が AWS IAM Identity Center(以後IAM Identity Centerと記載する)対応のアプリケーションになったことで、
QuickSight を利用している管理者が、IAM Identity Centerを使用して、ユーザーが既存の認証情報を使ってログインできるようにすることが可能になったというのがアップデートのざっくりした内容です。

そもそもIAM Identity Centerってなに?

AWS SSO(Single Sign-On)の後継サービスで、組織や企業におけるアイデンティティとアクセス管理を効率化し、セキュリティを向上させるためのソリューションです。IAM Identity Centerを使用すると、組織内のユーザーがAWSリソースへのアクセスを単一の認証情報を使用して行うことができます。一言でいうとシングルサインオンを実現するAWSのサービスといえます。
※ IAM Identity Center を利用するには前提としてAWS Organizations(以後Organizationsと記載する)を利用している必要があます。

シングルサインオンを使うと何が嬉しいのか。文章だけでは分かり辛いので、図解で説明します。

マルチアカウントの課題とシングルサインオン

一般的にマルチアカウントの課題としてユーザー名/パスワード等の認証情報をそれぞれ管理することが挙げられます。
image.png
引用元:AWSアカウントシングルサインオンの設計と運用

上記の課題を改善する仕組みがシングルサインオンです。
シングルサインオンを利用することで1つの認証情報で複数のアカウントを利用することができます。
利用者・管理者どちらにとっても利便性が向上し、セキュリティリスクも減少させることができます。
image.png
引用元:AWSアカウントシングルサインオンの設計と運用

アップデート内容の図解

今回のアップデート内容の『Amazon QuickSight が AWS IAM Identity Center対応』から分かるとおり、QuickSight と IAM Identity Centerは直接連携することはできませんでした。これまではQuickSightでシングルサインオンを実現するためには下図黄色の外部Idpの設定を別途設定しIAM Identity Centerと間接的に連携する必要がありました。
image.png

引用元:Amazon QuickSight におけるシングルサインオンの設計と実装

 
アップデート前後で図解します。

image.png

 

image.png

上記のとおり、IAM Identity CenterでQuickSight対応可能となったためQuickSightの外部Ipdの設定した間接的な連携は不要で、直接連携が可能になっております。

QuickSightの外部Ipdの設定を利用したSSOについては下記記事が参考になります。
AWS QuickSightへのアクセスにAWS SSOをつかう

検証方法

今回の検証で下記記事がとても参考になりました。
細かい設定については省略するので適宜記事を確認していただければと思います。
[アップデート] Amazon QuickSight で AWS IAM Identity Center の統合機能がサポートされました
IAM Identity Centerを使って複数アカウント管理する。(その1:IAM Identity Centerでのログイン)

検証の流れは下記5ステップです。
【環境構築】
 ① 検証用のOrganizations 環境(アカウント)作成
 ② IAM Identity Centerの有効化とユーザー・グループ等の設定
 ③ IAM Identity Centerの許可セット作成とアカウントの紐づけ
 ④ QuickSightのサインアップとIAM Identity Centerと紐づけ

【検証】
 ⑤ IAM Identity Center経由のQuickSightのログイン・動作の確認

環境構築

① 検証用のOrganizaions 環境作成

検証用の新規アカウントを作成します。
※既にQuickSightにサインアップしているアカウントでは今回のアップデート内容は利用できません。

image.png

② IAM Identity Centerの有効化とユーザー・グループ・許可セット等の設定

IAM Identity Centerの有効化をします。
image.png
※Organizationsの管理アカウントでないと有効化することはできません。

 
IAM Identity Centerを利用する際に認証情報を管理するソースは3つ選べます。
今回はデフォルトのIdentity Center ディレクトリを使用しております。
image.png

 
ユーザーを作成します。
今回は便宜上閲覧用と管理者用でユーザーを分けて作成しております。
image.png
 
グループを作成します。
今回は便宜上アカウント操作確認用とQuickSightの操作確認用の4グループを作成しております。
image.png

 
作成したユーザーをグループに追加します。
下記のとおりユーザーをそれぞれのグループに追加しました。

ユーザー グループ
taskforceuser_sso admin_G
taskforceuser_sso qs_admin
taskforceuser_sso_reader qs_reader
qs_author

<参考画像>
この段階で作成したIAM Identity Centerのユーザーでログインしてもコンソール画面に何も表示されません。
image.png

③ IAM Identity Centerの許可セット作成とアカウントの紐づけ

許可セットを作成します。
こちらの許可セットがIAM Identity Centerのユーザーやグループに割り当てる権限となります。
今回は事前定義された許可セット(テンプレート)から管理者用のAdministratorAccessの許可セットを作成します。IAMポリシーのようにカスタムすることもでき目的にあった権限付与も可能です。
image.png

 
検証用のアカウントとIAM Identity Centerのグループ及び許可セットを紐づけします。
次ステップでQuickSightのサインアップするので検証用のアカウントにadmin_Gを紐づけ許可セットにAdministratorAccessを割り当てます。

image.png

 
ユーザー等の紐づけ状況

ユーザー グループ 許可セット アカウント
taskforceuser_sso admin_G AdministratorAcces SHOO
taskforceuser_sso qs_admin
taskforceuser_sso_reader qs_reader
qs_author

<参考画面>
この段階で検証用のアカウントと管理者用の権限が割り当てられたtaskforceuser_ssoユーザーは紐づいている状態になるので、ログインするとコンソール上に紐づけたアカウントが表示されます。
image.png

④ QuickSightのサインアップとIAM Identity Centerと紐づけ

アカウントに紐づけたユーザーでQuickSightのサインアップします。
コンソール上でQuickSightを開くことでサインアップの画面に遷移します。
image.png

image.png
 
今回検証するアップデート内容はQuickSightのエンタープライズ版のみ利用可能です。(2023年11月現在)
認証方式でIAM Identity Center選択し、リージョンやアカウント情報を入力します。
image.png
 
次にQuickSightの管理者、作成者、閲覧者に対して、IAM Identity Centerのグループを紐づけします。
image.png
 
これでサインアップ完了です。
image.png
 
サインアップ完了するとIAM Identity Center のアプリケーションにサインアップ時に設定した内容を反映したアプリケーションが追加されます。
image.png
 
ユーザー等の紐づけ状況

ユーザー グループ 許可セット アカウント QS
taskforceuser_sso admin_G AdministratorAcces SHOO
taskforceuser_sso qs_admin 管理者
taskforceuser_sso_reader qs_reader 閲覧者
qs_author 作成者

<参考画面>
この段階でtaskforceuser_ssoユーザーでログインするとコンソール上に紐づけたアカウントとアプリケーションが表示されます。
image.png

taskforceuser_sso_readerはアカウントと紐づけをしていないのでログインしてもコンソール上にアプリケーションのみが表示されます。
image.png

検証

⑤ AWS IAM Identity Center経由のAmazon QuickSightのログイン・動作の確認

qs_readerグループであるtaskforceuser_sso_readerユーザーでログイン。
想定通りダッシュボードのみ閲覧できる状態になりました。
・qs_reader(閲覧者)
image.png

 
qs_adminグループであるtaskforceuser_ssoユーザーでログイン。
想定通りダッシュボード、分析、データセットに加えQuickSightの管理が行える状態になりました。
・qs_admin(管理者)
image.png
 
 
qs_authorグループにtaskforceuser_sso_readerユーザーを追加しログイン。
想定通りダッシュボード、分析、データセットを操作できる状態になりました。
・qs_author(作成者)
image.png

ユーザー等の紐づけ状況

ユーザー グループ 許可セット アカウント QS
taskforceuser_sso admin_G AdministratorAcces SHOO
taskforceuser_sso qs_admin 管理者
taskforceuser_sso_reader qs_reader 閲覧者
taskforceuser_sso_reader qs_author 作成者

検証結果

QuickSightにIAM Identity Centerを利用したシングルサインオンを実施するためには下記3つが必要です。
①AWS Organizationsの管理アカウントでIAM Identity Center有効化
②新規にエンタープライズ版でQuickSightでサインアップ
③サインアップ時にIAM Identity CenterのグループとQuickSight管理者・作成者・閲覧者を紐づけ(紐づけの設定は後からでも追加・変更可能)
 
動作に関しては
QuickSight管理者・作成者・閲覧者に紐づけたIAM Identity Centerのグループでそれぞれ想定通りの操作ができました。

さいごに

以前まではQuickSightは独立したシングルサインオンの設定が必要だったが、今回のアップデートでIAM Identity Center だけの利用で良くなったため管理の煩雑さを解消できるようになりました。

今回は一つのアカウントに対して検証しましたが、管理するアカウントが増えれば増えるほど IAM Identity Centerを活用する管理の煩雑さの改善効果は大きくなると考えます。
・IAM Identity Center活用イメージ
image.png

引用サイトまとめ

AWSアカウントシングルサインオンの設計と運用
Amazon QuickSight におけるシングルサインオンの設計と実装

参考サイトまとめ

Amazon QuickSight で AWS IAM アイデンティティセンターとの統合の一般提供を開始
AWS QuickSightへのアクセスにAWS SSOをつかう
[アップデート] Amazon QuickSight で AWS IAM Identity Center の統合機能がサポートされました
IAM Identity Centerを使って複数アカウント管理する。(その1:IAM Identity Centerでのログイン)

株式会社ジールでは、初期費用が不要で運用・保守の手間もかからず、ノーコード・ローコードですぐに手元データを分析可能なオールインワン型データ活用プラットフォーム「ZEUSCloud」を提供しております。
ご興味がある方は是非下記のリンクをご覧ください:
https://www.zdh.co.jp/products-services/cloud-data/zeuscloud/?utm_source=qiita&utm_medium=referral&utm_campaign=qiita_zeuscloud_content-area

1
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3