Aws-quicksight-quick-guide
AWS Quicksight-概要
AWS Quicksightは最も強力なビジネスインテリジェンスツールの1つであり、数分以内にインタラクティブなダッシュボードを作成して、組織に対するビジネスの洞察を提供できます。 ダッシュボードを作成できる視覚化またはグラフィック形式が多数あります。 データが更新またはスケジュールされると、ダッシュボードが自動的に更新されます。 Quicksightで作成したダッシュボードをWebアプリケーションに埋め込むこともできます。
機械学習の洞察とも呼ばれる最新のMLの洞察により、Quicksightは組み込みアルゴリズムを使用して、履歴データのあらゆる種類の異常またはピークを検出します。 これは、これらの洞察に基づいて事前にビジネス要件を準備するのに役立ちます。 Quicksightを開始するためのクイックガイドを次に示します。
以下はAWSの公式製品説明ページです-
https://aws.amazon.com/quicksight/
また、以下の情報を入力してAWSトライアルアカウントを購読し、[続行]ボタンをクリックすることもできます。
AWS Quicksight-ランディングページ
AWS Quicksightツールにアクセスするには、WebブラウザーでこのURLを渡すか、* AWSコンソール→サービス*に移動して、直接開くことができます
https://aws.amazon.com/quicksight/
このURLを開いたら、右上隅の*「コンソールにサインイン」*をクリックします。
Quicksightツールにログインするには、以下の詳細を提供する必要があります-
- アカウントIDまたはエイリアス
- IAMユーザー名
- パスワード
Quicksightにログインすると、次の画面が表示されます-
上の画像でマークされているように、
- セクションA *-「新しい分析」アイコンを使用して、新しい分析を作成します。 これをクリックすると、データセットを選択するように求められます。 以下に示すように、新しいデータセットを作成することもできます-
- セクションB *-[データの管理]アイコンには、Quicksightに既に入力されているすべてのデータセットが表示されます。 このオプションを使用すると、分析を作成せずにデータセットを管理できます。
- セクションC *-接続済みのさまざまなデータソースが表示されます。 新しいデータソースに接続するか、ファイルをアップロードすることもできます。
- セクションD *-このセクションには、すでに作成された分析のアイコン、公開されたダッシュボード、およびQuicksightについて詳しく説明したチュートリアルビデオが含まれています。
各タブをクリックして、以下のように表示できます-
すべての分析
ここでは、レポートやダッシュボードなど、AWS Quicksightアカウントの既存の分析をすべて表示できます。
すべてのダッシュボード
このオプションは、AWS Quicksightアカウントの既存のダッシュボードのみを表示します。
チュートリアルビデオ
Quicksightコンソールを開く他のオプションは、以下のURLを使用してAWSコンソールに移動することです-
https://aws.amazon.com/console/
ログインしたら、[サービス]タブに移動して、検索バーでQuicksightを検索する必要があります。 AWSアカウントでQuicksightサービスを最近使用した場合は、[履歴]タブに表示されます。
AWS Quicksight-データソースの使用
AWS Quicksightは、さまざまなソースからのデータを受け入れます。 ホームページで[新しいデータセット]をクリックすると、使用できるすべてのデータソースのオプションが表示されます。
以下は、すべての内部および外部ソースのリストを含むソースです-
Quicksightを最も一般的に使用されるデータソースのいくつかと接続してみましょう-
システムからファイルをアップロードする
S3形式のファイルを使用する
csv、.tsv、.clf、.elf.xlsx、Json形式のファイルのみを入力できます。 ファイルを選択すると、Quicksightは自動的にファイルを認識し、データを表示します。 [*ファイルのアップロード]ボタンをクリックすると、データセットの作成に使用するファイルの場所を指定する必要があります。.
画面は次のように表示されます。 [データソース名]で、作成されるデータセットに表示される名前を入力できます。 また、ローカルシステムからマニフェストファイルをアップロードするか、マニフェストファイルのS3ロケーションを提供する必要があります。
マニフェストファイルはjson形式のファイルで、入力ファイルのURL/場所とその形式を指定します。 形式が同じであれば、複数の入力ファイルを入力できます。 マニフェストファイルの例を次に示します。 入力ファイルの場所を渡すために使用される「URI」パラメーターはS3です。
{
"fileLocations": [
{
"URIs": [
"url of first file",
"url of second file",
"url of 3rd file and so on"
]
},
],
}
"globalUploadSettings": {
"format": "CSV",
"delimiter": ",",
"textqualifier": "'",
"containsHeader": "true"
}
*globalUploadSettings* で渡されるパラメーターはデフォルトのパラメーターです。 要件に応じてこれらのパラメーターを変更できます。
MySQL
データベースに接続するには、フィールドにデータベース情報を入力する必要があります。 データベースに接続したら、そこからデータをインポートできます。
RDBMSデータベースに接続する場合、次の情報が必要です-
- DSN名
- 接続の種類
- データベースサーバー名
- Port
- データベース名
- ユーザー名
- パスワード
Quicksightでは、次のRDBMSベースのデータソースがサポートされています-
- アマゾンアテナ
- アマゾンオーロラ
- Amazon Redshift
- Amazon Redshift Spectrum
- Amazon S3
- Amazon S3分析
- Apache Spark 2.0以降
- MariaDB 10.0以降
- Microsoft SQL Server 2012以降
- MySQL 5.1以降
- PostgreSQL 9.3.1以降
- Presto 0.167以降
- スノーフレーク *Teradata 14.0以降
アテナ
Athenaは、テーブルでクエリを実行するAWSツールです。 Athenaから任意のテーブルを選択するか、それらのテーブルでカスタムクエリを実行し、Quicksightでこれらのクエリの出力を使用できます。 データソースを選択する手順はいくつかあります
Athenaを選択すると、以下の画面が表示されます。 Quicksightでデータソースに付ける任意のデータソース名を入力できます。* 「接続の検証」をクリックします。 接続が検証されたら、「新しいソースを作成」*ボタンをクリックします
次に、ドロップダウンからテーブル名を選択します。 ドロップダウンには、Athenaに存在するデータベースが表示され、そのデータベースのテーブルがさらに表示されます。 それ以外の場合は、*「カスタムSQLを使用」*をクリックして、Athenaテーブルでクエリを実行できます。
完了したら、「データの編集/プレビュー」*または「視覚化」*をクリックして、データを編集するか、要件に従ってデータを直接視覚化します。
データソースの削除
Quicksightダッシュボードのいずれかで使用中のデータソースを削除すると、関連するデータセットが使用できなくなる可能性があります。 通常、SQLベースのデータソースをクエリするときに発生します。
*S3、営業部隊、またはSPICE* に基づいてデータセットを作成する場合、データがSPICEに保存されるため、データセットを使用する能力には影響しません。ただし、この場合、更新オプションは使用できません。
データソースを削除するには、データソースを選択します。 データセットページの作成時に[既存のデータソースから]タブに移動します。
削除する前に、推定テーブルサイズとデータソースの他の詳細を確認することもできます。
AWS Quicksight-データソースの制限
Quicksightツールで異なるデータソースを使用する場合、データソースに基づいて適用される特定の制限があります。
File
マニフェストファイルで指定された合計サイズの最大25GBを使用できます。 この制限は、SPICEにインポートされた後のファイルサイズに依存します。
マニフェストファイルでサポートされるファイルの数は1000であり、各ファイルの列数にもある程度の制限があります。
テーブルとクエリ
大きなテーブルをクエリする場合は、WhereまたはHave条件を使用して、SPICEにインポートされるデータの数を減らすことをお勧めします。 SPICEにインポートされるクエリ結果は25 GBを超えてはなりません。
SPICEにデータをインポートしているときに、一部の列の選択を解除できます。
データソースにQuicksightでサポートされていないデータタイプが含まれている場合、AWS Quicksightはそれらの値をスキップします。
Person ID | Sales Date | Amount |
---|---|---|
001 | 10/14/2017 | 12.43 |
002 | 5/3/2017 | 25.00 |
003 | Unknown | 18.17 |
004 | 3/8/2019 | 86.02 |
上記の値から、Quicksightはデータセットにこのデータをインポートする際に日付なしの値の行を削除します。 Quicksightでは次のデータ型がサポートされています-
Database Source | Number Data Types | String Data Types | Date time Data Types | Boolean Data Types |
---|---|---|---|---|
Amazon Athena,Presto |
|
|
|
|
Amazon Aurora, MariaDB,and MySQL |
|
|
|
|
PostgreSQL |
|
|
|
|
Apache Spark |
|
|
|
|
Snowflake |
|
|
|
|
Microsoft SQL Server |
|
|
|
|
AWS Quicksight-データセットの編集
Quicksightで使用する新しいデータセットを作成すると、次のメッセージが表示されます。 要件に応じて、データをプレビューまたは編集できます。 特定のフィールドのタイプを変更したり、ヘッダーの名前を変更したり、入力フィールドに基づいて計算フィールドを追加したりできます。
[データの編集/プレビュー]をクリックすると、入力データセットのヘッダーとフィールドが表示されます。 これがサンプルのデータセットです-
計算フィールドを追加するオプションもあります。 入力フィールドで組み込み関数を使用して、新しいフィールドを作成できます。 複数のフィールドの連結、単一のフィールドの複数のフィールドへのストリング解除、日付間の時間差などのオプションがあります。 完全なリストは以下に示されています-
フィールドの追加または変更が完了したら、上部の[保存して視覚化]または単に[保存]をクリックします。 [保存]ボタンをクリックすると既存の画面が表示され、[保存して視覚化]ボタンをクリックすると視覚的な作成画面が表示されます。
変更をキャンセルするには、上部の[キャンセル]ボタンをクリックします。
AWS Quicksight-新しい分析の作成
分析は、1つ以上のビジュアルの組み合わせです。 ビジュアルとは、グラフィカル、チャート、または表形式のデータの表現です。 ビジュアルを作成するために使用できるフォーマットは多数あります。 これには、円グラフ、水平棒グラフ、垂直棒グラフ、ピボットテーブルが含まれます。
ビジネス要件に従って入力データセットを変更したら、データセットをダブルクリックし、視覚化をクリックして新しい分析の作成を開始します。 以下の画面またはワークスペースが表示されます。
フィールドを選択すると、Quicksightはフィールドに応じてビジュアルのタイプを自動的に選択します。 視覚タイプを変更する場合は、視覚タイプのいずれかを選択できます。
たとえば、ビジュアルタイプの下の水平バーを選択することから始めます。 最初に、中央のビジュアル内の任意の1つのフィールドをドラッグします。 上部には、視覚で使用されるフィールドと対応する軸を含む「フィールドウェル」が表示されます。 最後のユーザー名の下にある下矢印をクリックできます。
これにより、ビューが拡大されます。 Y軸の性別とグループ/色の下のジョブファミリを選択しました。 ドロップダウンからフィールドを変更できます。 値の下で、任意の数値フィールドを追加し、そのフィールドで集計関数を使用できます。 デフォルトでは、ビジュアルには行数が表示されます。
ビジュアルは次のように表示されます-
ビジュアルの見出し/タイトルと他のフォーマットオプションの数を変更するオプションがあります。 一番右のドロップダウンをクリックします。 オプションが展開されます。 「ビジュアルのフォーマット」を選択します。 左側のタブの「ビジュアルのフォーマット」の下にさまざまなオプションが表示されます。
*X-Axis/Y-Axis* -これは、それぞれの軸のラベルまたはフィールド名を表示する場合のオプションを提供します。 また、これらのラベルの名前を変更することもできます。
グループ/カラー-ビジュアルのデフォルトの色を変更するオプションを提供します。
凡例-これは、タイトルとビジュアル内のタイトルの位置を変更するオプションを提供します。 タイトルをクリックするだけで、名前を変更することもできます。
データラベル-これは、各バーの正確な値と値を表示する必要がある位置を表示するオプションを提供します。
以下の画面は、すべてがオンになっているビジュアルを示しています-
AWS Quicksight-ビジュアルの追加
新しいビジュアルを追加するには、上部の*「追加」*記号をクリックします。 別の長方形のスペースが分析に追加されます。 異なる視覚タイプとフィールドを選択して、別の視覚を作成できます。
[追加]ボタンをクリックすると、既存の分析に以下を追加するオプションがあります-
- ビジュアルを追加
- インサイトを追加
- 表題を加える
- 説明を追加
- 計算フィールドを追加
- パラメータを追加
ビジュアルをフォーマットするには、チャートの右上隅にあるドロップダウン矢印ボタンを使用することもできます。 次のオプションが利用可能です-
- 最大化
- ビジュアルのフォーマット
- 凡例を非表示
- CSVにエクスポート
- 「その他」のカテゴリを非表示
- URLアクション
- 削除する
AWS Quicksight-フィルターを視覚的に使用する
Quicksightでは、作成中のビジュアルにフィルターを追加できます。 任意の分析またはすべてのビジュアルの下で、単一のビジュアルのみにフィルターを適用するオプションがあります。 フィルターを追加するには、左側のタブの「フィルター」アイコンをクリックします。 要件がある場合は、既存のフィルターが表示されるか、フィルターを作成できます。 以下の例では、既存のフィルターがないため、「作成」オプションがあります
[作成]をクリックすると、フィルターを作成できます。 これにより、フィルターを1つまたはすべてのビジュアルに追加するかどうかを選択できます。 また、フィルターを適用するフィールドを選択することもできます。
上記の例では、入力データセットの「生年月日」フィールドにフィルターを追加し、日付を指定しています。 現在、ビジュアルには、異なる職務レベルと職務上の従業員の平均在職期間が含まれていますが、生年月日が1980-01-01より後の従業員のみが含まれています。
AWS Quicksight-洞察
Amazonは、機械学習機能を使用してデータを分析し、洞察を提供します。 洞察は、データの傾向を示し、ビジネス指標の予測に役立ち、主要なドライバーを特定します。 手動で分析および作成する時間を大幅に節約できます。 洞察を活用することで、さまざまなポイントを簡単に理解でき、最適な判断を下して判断し、目標を達成するのに役立ちます。
Insightsをクリックすると、左側のパネルには、Quicksightによって自動的に計算および作成された洞察が「Suggested Insights
各インサイト見出しの右側にカーソルを合わせると、「」記号と3つのドットが表示されます。 「」記号は分析に洞察を追加するために使用され、3つのドットは既存の洞察にフィルターを追加するオプションを提供します。 洞察を追加するには、上部の[追加]記号をクリックし、[洞察の追加]をクリックします。
さらに、実行する計算タイプを選択し、その洞察を分析に追加できます。 「予測」と異常検出は機械学習によって強化され、Quicksightの「エンタープライズエディション」で利用できます
AWS Quicksight-ストーリーの作成
ストーリーは、一連の画面をキャプチャして、それらを1つずつ再生するオプションです。 たとえば、さまざまなフィルターオプションでビジュアルを表示する場合は、ストーリーを使用できます。 ストーリーを作成するには、左端のパネルで[ストーリー]をクリックします。 デフォルトでは、Storyboard 1という名前のストーリーがあります。 上部の一番右のパネルにあるキャプチャアイコンを使用して画面をキャプチャします。 画面の各キャプチャは、シーンとも呼ばれます。 複数のシーンをキャプチャでき、それらは「ストーリーボード1」の下に追加されます。 メインデータソースが更新されると、ストーリー内のデータが自動的に更新されます。
AWS Quicksight-パラメーターの使用
パラメーターは、ユーザーの制御を渡してダッシュボードを変更するために作成される変数です。 パラメーターは、入力データセットのフィールドを使用して、または分析用に作成されたフィルターで作成できます。 たとえば、フィルターを使用してパラメーターを作成すると、ダッシュボードユーザーはフィルターを作成せずにフィルターを直接適用できます。
パラメータを作成する
このセクションでは、パラメータを作成する方法を確認します-
- ステップ1 *-パラメータの名前を入力します。 性別をパラメーターとしてみましょう。
- ステップ2 *-データ型を選択します。 デフォルトでは、文字列です。
- ステップ3 *-以下のように可能なオプションを選択します。
パラメーターが追加されます。 ダッシュボードにコントロールを追加することを選択できます。
AWS Quicksight-分析の共有
分析の準備ができたら、これを電子メールまたは他のQuicksightユーザーによってユーザーと共有できます。 右上のメニューには、*「共有」*アイコンがあります
デフォルトでは、作成者または管理者のみが分析にアクセスできます。 分析を表示するには、ユーザーにアクセス権を提供する必要があります。 [分析アクセスの管理]をクリックすると、登録されているすべてのユーザーが表示されます。 アクセスを拡張したいユーザーを選択し、「ユーザーを招待」をクリックします。 ユーザーは電子メール通知を受け取り、通知を受け入れると、電子メールで分析を取得できます。
AWS Quicksight-ダッシュボード
ダッシュボードに分析のスクリーンショットが表示されます。 Analysisとは異なり、ダッシュボードはスクリーンショットのみとして読み込まれます。 ビジュアルで作成されたパラメーターとフィルターを使用して、同じチャートで新しいビジュアルを作成できます
作成した分析のダッシュボードを生成するには、共有アイコンの下にあるダッシュボードの公開をクリックします。 ダッシュボードに任意の名前を付けて、「ダッシュボードの公開」アイコンをクリックします。
このアカウントのすべてのユーザーまたは特定のユーザーのみとダッシュボードを共有することを選択できます。
これで、ダッシュボードはホーム画面の*「すべてのダッシュボード」*タブの下に表示されます。
これは、フィルターが付加されたサンプルダッシュボードです。 ビジュアルの作成中に追加されたフィルターを適用する以外に、ダッシュボードを編集するオプションがないことがわかります。
AWS Quicksight-Quicksightの管理
Quicksightの管理は、現在のアカウントを管理することです。 それぞれの役割を持つユーザーを追加し、サブスクリプションを管理し、SPICEキャパシティをチェックしたり、埋め込み用のホワイトリストドメインをチェックしたりできます。 このページでアクティビティを実行するには、管理者アクセスが必要です。
ユーザープロファイルの下に、Quicksightを管理するオプションがあります。
[サブスクリプションの管理]をクリックすると、次の画面が表示されます。 このアカウントのユーザーとそれぞれの役割が表示されます。
検索オプションもあります。 Quicksightで既存のユーザーを特に検索する場合。
有効なメールアドレスを持つユーザーを招待するか、有効なIAMアカウントを持つユーザーを追加できます。 IAMロールを持つユーザーは、Quicksightアカウントにログインして、アクセスできるダッシュボードを表示できます。
サブスクリプションには、購読しているQuicksightのエディションが表示されます。
SPICEキャパシティは、選択されている計算エンジンのキャパシティとこれまでに使用された量を示します。 必要に応じて容量を追加購入するオプションがあります。
アカウント設定には、Quicksightアカウントの詳細が表示されます-通知メールアドレス、QuicksightへのAWSリソースのアクセス許可、またはアカウントを閉じるオプションもあります。
Quicksightアカウントを閉じると、以下のオブジェクトに関連するすべてのデータが削除されます-
- データソース
- データセット
- 分析
- 公開されたダッシュボード
VPC接続の管理では、VPC接続を管理してQuicksightに追加できます。 新しいVPC接続を追加するには、次の詳細を提供する必要があります-
ドメインと埋め込みを使用すると、ユーザーのQuicksightダッシュボードを埋め込むドメインをホワイトリストに登録できます。 Quicksightでホワイトリストへのhttps://ドメインのみをサポートします-
以下に示すチェックボックスを選択して、使用するサブドメインを含めることもできます。 [追加]ボタンをクリックすると、Quicksightで埋め込みが許可されているドメイン名のリストにドメインが追加されます。
許可されたドメインを編集するには、ドメイン名の横にある[編集]ボタンをクリックする必要があります。 変更を加えて、更新をクリックします。
AWS Quicksight-エディションタイプ
AWS Quicksightは、サポートされるユーザー管理、アクセス許可、および機能ごとに異なるさまざまなエディションをサポートします-標準*および*エンタープライズ。 これらのエディションは両方とも、データ視覚化を作成および共有するためのすべてのQuicksight機能をサポートしています。
Enterpriseエディションは、AWSディレクトリへのActive Directory統合のサポートを提供します。 以下に示すように、エンタープライズ版でサポートされている他のさまざまな機能があります-
Features Supported | Standard Edition | Enterprise Edition |
---|---|---|
# of Free Authors | 1 | 1 |
# of Free Trial Authors (60Days) | 4 | 4 |
Included SPICE Capacity | 10 GB/User | 10 GB/User |
Readers | N/A | $0.30/session |
Additional SPICE Capacity | $0.25/GB/mo. | $0.38/GB/mo. |
Connect to spreadsheets, databases, data lakes, and business apps | ✓ | ✓ |
Easily analyze data with AutoGraph | ✓ | ✓ |
Fast, scalable visualizations | ✓ | ✓ |
Publish dashboards for interactive data access | ✓ | ✓ |
Single-Sign-On with SAML or OpenID Connect | ✓ | ✓ |
Web and mobile access | ✓ | ✓ |
Drill-down to detail and customize filters | ✓ | ✓ |
Enable audit logs with AWS CloudTrail | ✓ | ✓ |
Reader Role | ✓ | |
Securely Access data in Private VPCs and On-Prem | ✓ | |
Row Level Security | ✓ | |
Hourly refresh of SPICE data | ✓ | |
Secure data encryption at rest | ✓ | |
Connect to Active Directory | ✓ | |
Use Active Directory groups | ✓ |
- Quicksightの管理*オプションを使用して、AWS Quicksightのサブスクリプションタイプを確認できます。
Enterprise Editionでは、AWS Quicksightを使用して、以下のいずれかの方法を使用してユーザーを管理できます-
- Microsoft Active Directoryの使用:Enterpriseエディションでは、Microsoft Active Directoryグループを追加/削除して、ユーザーアカウントを作成および非アクティブ化できます。 ディレクトリグループに直接アクセスするか、ADコネクタを使用してアクセスできます。
- 統合ログイン。
- メールでユーザーを招待します。
QuicksightでADユーザー/グループを管理するには、* Quicksightの管理→ユーザーの管理/グループの管理*に移動する必要があります
ドロップダウンリストをクリックして、既存のユーザーの役割を変更することもできます-
- 管理者
- 著者
- リーダー
AWS Quicksight管理者は、以下に示すように[ユーザーの管理]オプションを使用して既存のユーザーのパスワードをリセットすることもできます-
[アカウントの管理]オプションを使用して、AQS Quicksight StandardエディションからEnterpriseエディションに更新できます。 アップグレードを実行するには、ユーザーにAWS Quicksight管理者権限が必要です。
右上隅にあるプロフィールアイコンをクリックして→今すぐアップグレードします。
[アップグレード]をクリックすると、次の画面が表示されます。 アップグレードを完了するには、[アップグレード]ボタンをクリックします。
注-サブスクリプションをStandardエディションからEnterpriseエディションに変更すると、ロールバックできません。
AWSクイックサイト-IAMポリシーの管理
QuicksightアカウントのIAMポリシーを管理するには、rootユーザーまたはIAM認証情報を使用できます。 リソースのアクセスとポリシーを管理するには、rootユーザーではなくIAM認証情報を使用することをお勧めします。
Amazon Quicksightにサインアップして使用するには、次のポリシーが必要です-
標準版
- ds:AuthorizeApplication
- ds:CheckAlias
- ds:CreateAlias
- ds:CreateIdentityPoolDirectory
- ds:DeleteDirectory
- ds:DescribeDirectories
- ds:DescribeTrusts
- ds:UnauthorizeApplication
- iam:CreatePolicy
- iam:CreateRole
- iam:ListAccountAliases
- quicksight:CreateUser
- quicksight:CreateAdmin
- クイックサイト:購読
エンタープライズ版
上記のポリシーとは別に、エンタープライズ版では以下の権限が必要です-
- quicksight:GetGroupMapping
- quicksight:SearchDirectoryGroups
- quicksight:SetGroupMapping
ユーザーがQuicksightでAWSリソースのアクセス許可を管理できるようにすることもできます。 次のIAMポリシーは両方のエディションで割り当てる必要があります-
- iam:AttachRolePolicy
- iam:CreatePolicy
- iam:CreatePolicyVersion
- iam:CreateRole
- iam:DeletePolicyVersion
- iam:DeleteRole
- iam:DetachRolePolicy
- iam:GetPolicy
- iam:GetPolicyVersion
- iam:GetRole
- iam:ListAttachedRolePolicies
- iam:ListEntitiesForPolicy
- iam:ListPolicyVersions
- iam:ListRoles
- s3:ListAllMyBuckets
AWS管理者がQuicksightから登録解除できないようにするには、すべてのユーザーを拒否することができます*「quicksight:Unsubscribe」*
ダッシュボード埋め込みのIAMポリシー
AWS QuciksightダッシュボードURLをウェブページに埋め込むには、次のIAMポリシーをユーザーに割り当てる必要があります-
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "quicksight:RegisterUser",
"Resource": "*",
"Effect": "Allow"
},
{
"Action": "quicksight:GetDashboardEmbedUrl",
"Resource": "arn:aws:quicksight:us-east-1:
868211930999:dashboard/
f2cb6cf2-477c-45f9-a1b3-639239eb95d8 ",
"Effect": "Allow"
}
]
}
QuicksightのIAMポリシーシミュレーターを使用して、これらのロールとポリシーを管理およびテストできます。 以下は、IAM Policy Simulatorにアクセスするためのリンクです-
https://policysim.aws.amazon.com/home/index.jsp?#
AWS Quicksight-ダッシュボードの埋め込み
また、Quicksightダッシュボードを外部アプリケーション/ウェブページに埋め込むことも、AWS Cognitoサービスを使用してユーザーアクセスを制御することもできます。 ユーザーコントロールを実行するには、CognitoでユーザープールとIDプールを作成し、EmbedダッシュボードポリシーをIDプールに割り当てることができます。
AWS Cognitoは、管理者が一時ユーザーを作成および管理してアプリケーションへのアクセスを提供できるようにするIAMサービスです。 IDプールを使用すると、これらのユーザープールの権限を管理できます。
安全なダッシュボードURLを生成し、ユーザーコントロールを実行する方法を見てみましょう-
手順1-ユーザープールとユーザーの作成
AWS Cognitoでユーザープールを作成し、ユーザーを作成します。 * Amazon Cognito→ユーザープールの管理→ユーザープールの作成*に移動します。
ステップ2-IDプールの作成
ユーザープールが作成されたら、次のステップはIDプールを作成することです。 [[1]] = arn%3Aaws%3Aiam%3A%3A015428540659%3Auser%2Fcognito&forceMobileApp = 0 [https://console.aws.amazon.com/cognito/home?region=us-east-1]
[新しいIDプールの作成]をクリックします。
IDプールの適切な名前を入力します。 [認証プロバイダー]セクションに移動し、[コグニト]オプションを選択します。
ステップ3-Cognitoロールの作成
ユーザープールID(ユーザープールID)とアプリクライアントIDを入力します(ユーザープールのアプリクライアントに移動し、IDをコピーします)。
次に、[プールの作成]をクリックし、[許可]をクリックして、IAMでIDプールのロールを作成します。 2つのCognitoロールが作成されます。
ステップ4-カスタムポリシーの割り当て
次のステップは、上記のステップで作成されたアイデンティティロールにカスタムポリシーを割り当てることです-
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "quicksight:RegisterUser",
"Resource": "*",
"Effect": "Allow"
},
{
"Action": "quicksight:GetDashboardEmbedUrl",
"Resource": "*",
"Effect": "Allow"
},
{
"Action": "sts:AssumeRole",
"Resource": "*",
"Effect": "Allow"
}
]
}
ダッシュボードのAmazonリソースネーム(ARN)を「*」の代わりに_quicksight:GetDashboardEmbedUrl” _の下に渡すと、ユーザーが1つのダッシュボードのみにアクセスするように制限できます。
ステップ5-Cognitoアプリケーションへのログイン
次のステップは、ユーザープールのユーザー資格情報でCognitoアプリケーションにログインすることです。 ユーザーがアプリケーションにログインすると、Cognitoは3つのトークンを生成します-
- IDToken
- アクセストークン
- 更新トークン
一時的なIAMユーザーを作成するには、資格情報は次のようになります-
AWS.config.region = 'us-east-1';
AWS.config.credentials = new AWS.CognitoIdentityCredentials({
IdentityPoolId:"Identity pool ID", Logins: {
'cognito-idp.us-east-1.amazonaws.com/UserPoolID': AccessToken
}
});
一時的なIAM認証情報を生成するには、以下のパラメーターを指定してsts.assumeロールメソッドを呼び出す必要があります-
var params = {
RoleArn: "Cognito Identity role arn", RoleSessionName: "Session name"
};
sts.assumeRole(params, function (err, data) {
if (err) console.log( err, err.stack);
//an error occurred
else {
console.log(data);
})
}
ステップ6-Quicksightでのユーザーの登録
次のステップでは、ステップ3で生成された資格情報に対して「quicksight.registerUser」を使用して、以下のパラメーターを使用してQuicksightにユーザーを登録します-
var params = {
AwsAccountId: “account id”,
Email: 'email',
IdentityType: 'IAM' ,
Namespace: 'default',
UserRole: ADMIN | AUTHOR | READER | RESTRICTED_AUTHOR | RESTRICTED_READER,
IamArn: 'Cognito Identity role arn',
SessionName: 'session name given in the assume role creation',
};
quicksight.registerUser(params, function (err, data1) {
if (err) console.log("err register user”);
//an error occurred
else {
//console.log("Register User1”);
}
})
ステップ7-AWS設定ファイルを更新する
次に、ステップ5で生成されたユーザーのAWS構成を更新します。
AWS.config.update({
accessKeyId: AccessToken,
secretAccessKey: SecretAccessKey ,
sessionToken: SessionToken,
"region": Region
});
ステップ8-Quicksightダッシュボードの埋め込みURLを生成する
手順5で作成した資格情報を使用して、以下のパラメーターを指定してquicksight.getDashboardEmbedUrlを呼び出し、URLを生成します。
var params = {
AwsAccountId: "Enter AWS account ID",
DashboardId: "Enter dashboard Id",
IdentityType: "IAM",
ResetDisabled: true,
SessionLifetimeInMinutes: between 15 to 600 minutes,
UndoRedoDisabled: True | False
}
quicksight.getDashboardEmbedUrl(params,function (err, data) {
if (!err) {
console.log(data);
} else {
console.log(err);
}
});
上記の生成されたURLを使用して、アプリケーションから「QuickSightEmbedding.embedDashboard」を呼び出す必要があります。
Amazon Quicksightと同様に、組み込みダッシュボードも次の機能をサポートしています-
- ドリルダウンオプション
- カスタムアクション(新しいタブへのリンク)
- 画面上のフィルター
- CSVにダウンロード
- ビジュアルの並べ替え
- メールレポートのオプトイン
- ダッシュボードをデフォルトオプションにリセット
- ダッシュボードでの元に戻す/やり直しアクション
AWS Quicksight-AWS SDK
AWS Quicksight SDKを使用して、以下を管理できます-
- ユーザーとグループの管理
- ダッシュボードの埋め込み
以下は、埋め込みダッシュボードを表示するために使用されるサンプルHTMLコードを示しています-
<!DOCTYPE html>
<html>
<head>
<title>Sample Embed</title>
<script type="text/javascript" src="https://unpkg.com/[email protected]/dist/quicksight-embedding-js-sdk.min.js"></script>
<script type="text/javascript">
function embedDashboard() {
var containerDiv = document.getElementById("dashboardContainer");
var params = {
url: "https://us-east-1.quicksight.aws.amazon.com/sn/dashboards/xxx-x-x-xx-x-x-x-x-x-x-x-xx-xx-x-xx",
container: containerDiv,
parameters: {
country: 'United States'
},
height: "600px",
width: "800px"
};
var dashboard = QuickSightEmbedding.embedDashboard(params);
dashboard.on('error', function() {});
dashboard.on('load', function() {});
dashboard.setParameters({country: 'Canada'});
}
</script>
</head>
<html>
AWS SDKを使用するには、次の知識が必要です-
- JSON
- ウェブサービス
- HTTPリクエスト
- JavaScript、Java、Python、C#などの1つ以上のプログラミング言語。
AWS Quicksight-開発者の責任
次の仕事の責任は、AWS Quicksight開発者によって実行されます-
- 分析、レポート、およびビジネスインテリジェンスツールでの関連する実務経験が必要です。
- ETLおよびビジネスインテリジェンス環境をセットアップするためのAWSの顧客要件と設計ソリューションの理解。
- さまざまなAWSサービス、その使用と構成を理解する。
- 大規模で異種のデータセットを使用するビジネス環境で、SQL、ETL、データウェアハウスソリューション、およびデータベースを使用する能力。
- 複雑な定量的スキルとデータ分析スキル。
- AWS IAMポリシー、ロール、およびAWSサービスの管理者を理解する。