Amazon Quick Sight での Starburst の使用 - Amazon Quick Suite

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon Quick Sight での Starburst の使用

Starburst は、超並列処理 (MPP) クエリエンジンである Trino をベースに構築された、フル機能のデータレイク分析サービスです。このセクションでは、Amazon Quick Sight から Starburst に接続する方法について説明します。Quick Sight と Starburst 間のすべてのトラフィックは SSL によって有効になります。Starburst Galaxy に接続する場合は、Starburst Galaxy アカウントにログインして Partner Connect を選択し、Quick Sight を選択して、必要な接続の詳細を取得できます。ホスト名やポートなどの情報が表示されるはずです。Amazon Quick Sight は、Starburst への基本的なユーザー名とパスワード認証をサポートしています。

Quick Sight には、Starburst ログイン認証情報またはOAuthクライアント認証情報を使用して Starburst に接続する 2 つの方法があります。次のセクションでは、両方の接続方法について学習します。

ログイン認証情報を使用した Starburst への Quick Sight データソース接続の作成

  1. まず、新しいデータセットを作成します。左側のナビゲーションペインで、データを選択し、作成を選択し、新しいデータセットを選択します。

  2. [Starburst] データソースカードを選択します。

  3. Starburst の製品タイプを選択します。オンプレミスの Starburst インスタンスには [Starburst Enterprise] を選択します。マネージドインスタンスには [Starburst Galaxy] を選択します。

  4. [データソース名] に、Starburst のデータソース接続のための分かりやすい名前を入力します。Starburst への接続から多数のデータセットを作成できるようにするため、名前はシンプルにしておくことをお勧めします。

  5. [Connection type] (接続タイプ) で、使用しているネットワークのタイプを選択します。データがパブリックに共有されている場合は [パブリックネットワーク] を選択します。データが VPC 内にある場合は [VPC] を選択します。Amazon Quick Sight で VPC 接続を設定するには、「Amazon Quick Sight での VPC 接続の設定」を参照してください。この接続タイプは Starburst Galaxy では使用できません。

  6. [データベースサーバー] には、Starburst 接続の詳細で指定されているホスト名を入力します。

  7. [カタログ] には、Starburst 接続の詳細で指定されているカタログを入力します。

  8. [ポート] には、Starburst 接続の詳細で指定されているポートを入力します。Starburst Galaxy のデフォルトは 443 です。

  9. [ユーザー名][パスワード] には、Starburst の接続認証情報を入力します。

  10. 接続が機能していることを確認するには、[接続を検証] を選択します。

  11. 完了してデータソースを作成するには、[データソースの作成] を選択します。

注記

Amazon Quick Sight と Starburst 間の接続は、Starburst バージョン 420 を使用して検証されました。

Quick Sight アカウントと Starburst アカウントの間にデータソース接続が正常に作成されたら、Starburst データデータセットの作成を含む を開始できます。

OAuth クライアント認証情報を使用した Starburst への Quick Sight データソース接続の作成

OAuth クライアント認証情報を使用して、Quick Sight APIs を介して Quick Sight アカウントを Starburst に接続できます。 OAuth は、高度なセキュリティ要件を持つアプリケーションによく使用される標準の認可プロトコルです。OAuth クライアント認証情報を使用して Starburst に接続すると、Quick Sight APIs と Quick Sight UI で Starburst データを含むデータセットを作成できます。Starburst OAuth での設定の詳細については、「OAuth 2.0 authentication」を参照してください。

Quick Sight はグランclient credentialsOAuthトタイプをサポートしています。 OAuthクライアント認証情報は、machine-to-machine通信用のアクセストークンを取得するために使用されます。この方法は、ユーザーが関与せずにサーバーでホストされているリソースにクライアントがアクセスする必要があるシナリオに適しています。

OAuth.2.0 のクライアント認証情報フローには、認可サーバーでクライアントアプリケーションを認証するために使用できるクライアント認証メカニズムがいくつかあります。Quick Sight は、Starburst OAuthに基づくクライアント認証情報を次の 2 つのメカニズムでサポートします。

  • トークン (クライアントシークレットベースの OAuth): シークレットベースのクライアント認証メカニズムは、クライアント認証情報とともに使用され、認可サーバーで認証するためにフローを付与します。この認証スキームでは、OAuth クライアントアプリケーションの client_idclient_secret を Secrets Manager に保存する必要があります。

  • X509 (クライアントプライベートキー JWT ベースの OAuth): X509 証明書キーベースのソリューションは、クライアントシークレットの代わりに認証に使用されるクライアント証明書を使用して OAuth メカニズムに追加のセキュリティレイヤーを提供します。この方法は主に、この方法を使用して 2 つのサービス間の強い信頼を持つ認可サーバーで認証するプライベートクライアントによって使用されます。

Quick Sight は、次の ID プロバイダーとOAuthの接続を検証しました。

  • OKTA

  • PingFederate

Secrets Manager での OAuth 認証情報の保存

OAuth クライアント認証情報は machine-to-machine のユースケースを対象としており、インタラクティブに設計されていません。Quick Sight と Starburst の間にデータソース接続を作成するには、OAuthクライアントアプリケーションの認証情報を含む新しいシークレットを Secrets Manager で作成します。新しいシークレットで作成されたシークレット ARN を使用して、Quick Sight に Starburst データを含むデータセットを作成できます。Quick Sight で Secrets Manager キーを使用する方法の詳細については、「」を参照してくださいQuick Suite でデータベース認証情報の代わりに AWS Secrets Manager シークレットを使用する

Secrets Manager に保存する必要がある認証情報は、使用する OAuth メカニズムによって決まります。X509-based OAuth シークレットには、次のキーと値のペアが必要です。

  • username: Starburst に接続するときに使用する Starburst アカウントのユーザー名

  • client_id: OAuth クライアント ID

  • client_private_key: OAuth クライアントのプライベートキー

  • client_public_key: OAuthクライアント証明書のパブリックキーとその暗号化されたアルゴリズム (例: {"alg": "RS256", "kid", "cert_kid"})

トークンベースの OAuth シークレットには、次のキーと値のペアが必要です。

  • username: Starburst に接続するときに使用する Starburst アカウントのユーザー名

  • client_id: OAuth クライアント ID

  • client_secret: OAuth クライアントシークレット

Quick Sight APIs を使用した Starburst OAuth接続の作成

Starburst OAuth認証情報を含むシークレットを Secrets Manager で作成し、Quick Suite アカウントを Secrets Manager に接続したら、Quick Sight APIs と SDK を使用して Quick Sight と Starburst 間のデータソース接続を確立できます。次の例では、トークン OAuth クライアントの認証情報を使用して Starburst データソース接続を作成します。

{ "AwsAccountId": "AWSACCOUNTID", "DataSourceId": "DATASOURCEID", "Name": "NAME", "Type": "STARBURST", "DataSourceParameters": { "StarburstParameters": { "Host": "STARBURST_HOST_NAME", "Port": "STARBURST_PORT", "Catalog": "STARBURST_CATALOG", "ProductType": "STARBURST_PRODUCT_TYPE", "AuthenticationType": "TOKEN", "DatabaseAccessControlRole": "starburst-db-access-role-name", "OAuthParameters": { "TokenProviderUrl": "oauth-access-token-endpoint", "OAuthScope": "oauth-scope", "IdentityProviderResourceUri" : "resource-uri", "IdentityProviderVpcConnectionProperties" : { "VpcConnectionArn": "IdP-VPC-connection-ARN" } } }, "VpcConnectionProperties": { "VpcConnectionArn": "VPC-connection-ARN-for-Starburst" }, "Credentials": { "SecretArn": "oauth-client-secret-ARN" } }

CreateDatasource API オペレーションの詳細については、「CreateDataSource」を参照してください。

Quick Sight と Starburst 間の接続が確立され、Quick Sight APIsまたは SDK を使用してデータソースが作成されると、新しいデータソースが Quick Sight に表示されます。Quick Sight の作成者は、このデータソースを使用して、Starburst データを含むデータセットを作成できます。テーブルは、CreateDataSource API コールで渡される DatabaseAccessControlRoleパラメータで使用されるロールに基づいて表示されます。データソース接続の作成時にこのパラメータが定義されていない場合は、デフォルトの Starburst ロールが使用されます。

Quick Sight アカウントと Starburst アカウントの間にデータソース接続が正常に作成されたら、Starburst データデータセットの作成を含む を開始できます。