QuickSightでリーダーセッションキャパシティを有効化し、匿名ユーザー用のダッシュボードを公開してみた

2022.06.30

いわさです。

QuickSightではユーザーごとに権限(管理者、作成者、閲覧者)を設定し利用しますが、Enterprise Editionの場合ユーザー以外へ閲覧させるための機能があります。
この機能を使うと個々のリーダーをプロビジョンすることなく、リーダーセッションを一括して購入することができます。

キャパシティー料金は、外部アプリケーションにダッシュボードを組み込みつつQuickSightのユーザー認証を行いたくない場合や、大量のリーダーが必要となるような大規模な運用を行う場合に適しています。
通常のリーダー料金とは異なっており、以下のような価格となっています。

今回、この機能を有効化し認証なしでダッシュボードへアクセスしてみました。

サブスクリプションを購入

まず、QuickSight管理者によってリーダーセッションキャパシティのサブスクリプションを取得する必要があります。
前述の料金ページのとおり、月間と年間のプランがありますが、今回は月間プランを選択します。

有効化されました。

先程の最終確認画面には「最初の月は按分される」との記述があり、有効化されたあとのサブスクリプション管理画面には「プランは、7月1日 9時JSTに自動更新」との記述があります。
これは本日6月30日に有効化し、7月1日の9時までに通常の「リーダーあたりの料金」に切り替えることで、6月30日の1日分の料金のみで済みそうな予感がしますね。そのあたりはみなさんも気になるところだと思いますので、後日この記事に追記します。

パブリックアクセス機能を許可する

リーダーセッションキャパシティのサブスクリプションを取得出来たら、次はQuickSightアカウントでパブリックアクセス操作を許可します。
ダッシュボードを公開するには、個々のダッシュボードで作成者が公開設定を行う必要があるのですが、管理者がパブリックアクセスを許可しない場合などはこの設定を使うことで制御することが出来ます。

なお、リーダーセッションキャパシティを取得していない場合は有効化することが出来ません。

ここはただ有効化するだけなので注意点はありませんが、このパブリックアクセスの許可/拒否設定はUpdatePublicSharingSettingsAPIで操作することも可能です。

時間指定で一括で公開・非公開を制御する場合など、活用できるシーンありそうな気がします。

個別のダッシュボードを公開設定にする

さて、最後にダッシュボードごとの共有設定画面で、パブリックアクセスを有効化します。
リーダーセッションキャパシティを購入し、アカウントのパブリックアクセスを許可し、ダッシュボードのパブリックアクセスを有効化するという、三段階有効化が必要です。

共有対象で「インターネット上の全ユーザ」を有効化します。
選択時に確認ダイアログを表示されます。ダッシュボードIDを知っていれば誰でもアクセス出来る状態になるので、本当に有効化して良いのかよく考えましょう。

有効化されるとダッシュボードのヘッダに「パブリック」のロゴが表示されます。

また、ダッシュボード一覧でもパブリックアクセス可能であることを示すアイコンが表示されるようになります。

アクセスする

さて、パブリックアクセスが出来る状態になったのでアクセスしてみましょう。
ただし、ユーザーモードでアクセスしていたURLを使うことは出来ません。そのままだと以下のように認証が要求されます。

https://ap-northeast-1.quicksight.aws.amazon.com/sn/auth/signin?redirect_uri=https%3A%2F%2Fap-northeast-1.quicksight.aws.amazon.com%2Fsn%2Fdashboards%2Fa8b5dee9-0f70-4ce7-856a-9b575ad1f7dd%3Fstate%3DhashArgs%2523%26isauthcode%3Dtrue

先程のダッシュボードの共有画面で公開用のURLをコピーすることが出来ます。
こちらでアクセスしてみましょう。

https://ap-northeast-1.quicksight.aws.amazon.com/sn/accounts/123456789012/dashboards/a8b5dee9-0f70-4ce7-856a-9b575ad1f7dd?directory_alias=iwasa-quicksight

表示することが出来ました。
これで、QuickSightへの認証を行わずにインターネット上でダッシュボードにアクセス出来る状態となりました。

パブリックアクセスをオフにする

ここでは公開したダッシュボードのパブリックアクセスをオフに変更してみます。

期待どおりアクセスできなくなりました。

また、アカウントレベルでのパブリック埋め込みを禁止した場合でも同じように、公開されていたダッシュボードにアクセスできなくなりました。こちらも期待どおりです。

ただし、アカウントレベルでのパブリック埋め込みを禁止しても次のようにダッシュボードごとのパブリック設定状態は保持されます。
これらの設定が残っていると、アカウントレベルでのパブリック設定を有効化したタイミングで意図せずダッシュボードが許可されてしまいます。
過去にリーダーセッションキャパシティを使ったことがあるアカウントの場合は特に注意が必要です。

サブスクリプションを「リーダーあたり」へ戻る

さて、最後に取得したリーダーセッションキャパシティのサブスクリプションを、従来のリーダーあたりの料金に戻したいと思います。
以下のとおり管理メニューのサブスクリプション管理画面で下記リンクを押下します。
確認ダイアログが表示されるので、最終確認します。

切り替え操作が完了しました。
といっても、切り替え自体は取得済みの月間スタータープランの終了時に切り替わるので、それまではリーダーセッションキャパシティが引き続き利用出来る状態となっています。
月の半ばで切り替えしたとしても、月末までは料金が発生し続けるのでご注意ください。

さいごに

本日はQuickSightのリーダーセッションキャパシティをついに試すことが出来ました。
この機能を使うためには最低でも$250必要になるので今まで中々検証する気が起きなかったのですが、QuickSightやWorkSpacesなどの月額料金系は、初月は月末までの日割りになるケースが多いです。
リーダーセッションキャパシティももしかしてと思って有効化してみることにしました。
「もしこの1日の利用で$250発生したらどうしよう」と不安な気持ちが少しありますが、7月1日 9時JSTの結果が楽しみでもあります。