JDBC 接続を介して外部分析アプリケーションで Amazon DataZone サブスクライブデータを分析する
Amazon DataZone を使用すると、データコンシューマーは 1 つのプロジェクト内の複数のソースからのデータを簡単に見つけてサブスクライブし、Amazon Athena、Amazon Redshift クエリエディタ、Amazon SageMaker を使用してこのデータを分析できます。
Amazon DataZone は、Athena JDBC ドライバーを介した認証もサポートしています。これにより、ユーザーは、SQL Workbench、DBeaver、Tableau、Domino、Power BI などの一般的な外部 SQL および分析ツールを使用して、サブスクライブした Amazon DataZone データをクエリできます。ユーザーは SSO または IAM を通じて企業の認証情報を使用して認証し、Amazon DataZone プロジェクト内でサブスクライブしたデータの分析を開始できます。
Amazon DataZone による Athena JDBC ドライバーのサポートには、次の利点があります。
-
データコンシューマーは、JDBC 接続をサポートする幅広い分析ツールから好みのツールを使用して Amazon DataZone に接続できます。これにより、データ消費のために新しくツールを学ばなくても、使い慣れたソフトウェアを引き続き使用できます。
-
プログラムによるアクセス - サーバーまたはカスタムアプリケーションを介してアクセス管理データに JDBC 接続することにより、データコンシューマーは自動的でより複雑なデータオペレーションを実行できます。
JDBC URL を使用して、外部分析ツールを Amazon DataZone サブスクライブデータに接続できます。JDBC URL を取得するには、次の手順を実行します。
重要
現在のリリースでは、Amazon DataZone は Amazon Athena JDBC ドライバーを使用した認証をサポートしています。この手順を完了するには、選択した分析アプリケーション用の最新の Athena JDBC ドライバーをダウンロードしてインストールしていることを確認します。
-
Amazon DataZone データポータル URL に移動し、シングルサインオン (SSO) または AWS 認証情報を使用してサインインします。Amazon DataZone 管理者の場合は、https://console.aws.amazon.com/datazone
で Amazon DataZone コンソールに移動し、ドメインが作成された AWS アカウントでサインインすると、[データポータルを開く] を選択できます。 -
Amazon DataZone データポータルで、[プロジェクトを閲覧]を選択し、分析するデータがあるプロジェクトを検索して選択します。
-
プロジェクトのホームページの右側のサイドパネルで、[JDBC と接続] を選択します。
-
[JDBC パラメータ] のポップアップウィンドウで、認証方法 (SSO 認証情報または IAM 認証情報) を選択し、JDBC URL の文字列または個々のパラメータをコピーします。その後、これを使用して外部分析アプリケーションに接続できます。
JBDC クエリまたはパラメータを使用して外部分析アプリケーションを Amazon DataZone に接続すると、RedeemAccessToken API が呼び出されます。RedeemAccessToken API は Identity Center アクセストークンを AmazonDataZoneDomainExecutionRole 認証情報と交換します。認証情報は GetEnvironmentCredentials API の呼び出しに使用されます。
IAM 認証情報を使用して Athena の Amazon DataZone が管理するデータに接続する認証メカニズムの詳細については、「DataZone IAM 認証情報プロバイダー」を参照してください。IAM Identity Center を使用して Athena の Amazon DataZone が管理するデータへの接続を有効にする認証メカニズムの詳細については、「DataZone IDC 認証情報プロバイダー」を参照してください。
RedeemAccessToken API リファレンス
リクエストの構文
POST /sso/redeem-token HTTP/1.1 Content-type: application/json { "domainId": "string", "accessToken": "string" }
リクエストパラメータ
このリクエストでは、次のパラメータを使用します。
- DomainId
-
Amazon DataZone ドメインの ID。
パターン: ^dzd[-_][a-zA-Z0-9_-]{1,36}$
必須: はい
- accessToken
-
Identity Center アクセストークン。
タイプ: 文字列
必須: はい
レスポンスの構文
HTTP/1.1 200 Content-type: application/json { "credentials": AwsCredentials }
レスポンス要素
- 認証情報
-
GetEnvironmentCredentialsAPI の呼び出しに使用されるAmazonDataZoneDomainExecutionRole認証情報。タイプ:
AwsCredentialsオブジェクトの配列。このデータタイプには次のプロパティが含まれます。-
accessKeyId: AccessKeyId
-
secretAccessKey: SecretAccessKey
-
sessionToken: SessionToken
-
expiration: Timestamp
-
- accessToken
-
Identity Center アクセストークン。
タイプ: 文字列
必須: はい
エラー
- AccessDeniedException
-
このアクションを実行する十分なアクセス権限がありません。
HTTP ステータスコード: 403
- ResourceNotFoundException
-
指定されたリソースが見つかりません。
HTTP ステータスコード: 404
- ValidationException
-
入力が、AWS サービスで指定された制約を満たしていません。
HTTP ステータスコード: 400
- InternalServerException
-
リクエストは、不明なエラー、例外、または障害により実行できませんでした。
HTTP ステータスコード: 500