Amazon Athena に接続できない - Amazon QuickSight

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

Amazon Athena に接続できない

   対象者: Amazon QuickSight 管理者 

このセクションでは、Athena への接続に関するトラブルシューティングについて説明します。

Amazon Athena に接続できない場合、クエリの実行時に、アクセス許可が設定されていないことを示す、不十分なアクセス許可によるエラーが発生する場合があります。Amazon を Athena QuickSight に接続できることを確認するには、次の設定を確認してください。

  • AWS Amazon 内の リソース許可 QuickSight

  • AWS Identity and Access Management (IAM) ポリシー

  • Amazon S3 の場所

  • クエリ結果の場所

  • AWS KMS キーポリシー (暗号化されたデータセットのみ)

詳細については、以下を参照してください。その他の Athena の問題のトラブルシューティングについては、「Amazon で Amazon Athena を使用する場合の接続の問題 QuickSight」を参照してください。

Athena の使用を Amazon QuickSight に許可していることを確認します。

   対象者: Amazon QuickSight 管理者 

次の手順を使用して、Amazon が Athena を使用する QuickSight 権限を正常に付与していることを確認します。 AWS リソースへのアクセス許可は、すべての Amazon QuickSight ユーザーに適用されます。

このアクションを実行するには、Amazon QuickSight 管理者である必要があります。アクセス許可があるかどうかを確認するには、右上のプロファイルからメニューを開くときに 管理 QuickSight オプションが表示されることを確認します。

Amazon QuickSight が Athena にアクセスすることを許可するには
  1. プロファイル名 (右上) を選択します。の管理 QuickSightを選択し、セキュリティとアクセス許可 を選択します。

  2. QuickSight へのアクセスで AWS サービスを追加または削除を選択します。

  3. リストで Athena を検索します。Athena のチェックボックスをオフにしてからもう一度オンにして、Athena を有効にします。

    次に、[Connect both (両方を接続)] を選択します。

  4. Amazon からアクセスするバケットを選択します QuickSight。

    ここでアクセスする S3 バケットの設定は、 のリストから Amazon S3 を選択してアクセスする設定と同じです AWS サービス。他のユーザーが使用しているバケットを誤って無効にしないように注意してください。

  5. [Finish] (完了) を選択して、選択を確定します。保存せずに終了するには、[Cancel] (キャンセル) を選択します。

  6. 更新 を選択して、 への Amazon QuickSight アクセスの新しい設定を保存します AWS サービス。または、[Cancel] (キャンセル) を選択して、変更を加えずに終了します。

  7. AWS リージョン 完了したら、正しい を使用していることを確認してください。

    このプロセスの最初のステップ AWS リージョン で を変更する必要がある場合は、以前使用していた AWS リージョン に戻します。

IAM ポリシーが適切なアクセス許可を付与していることを確認する

   対象者: システム管理者 

AWS Identity and Access Management (IAM) ポリシーは、特定のアクションにアクセス許可を付与する必要があります。IAM ユーザーまたはロールは、Athena がクエリに使用する S3 バケットの入力と出力の両方を読み書きできる必要があります。

データセットが暗号化されている場合、IAMユーザーは指定されたキーのポリシーで AWS KMS キーユーザーである必要があります。

IAM ポリシーにクエリに S3 バケットを使用するアクセス許可があることを確認するには
  1. https://console.aws.amazon.com/iam/ で IAM コンソールを開きます。

  2. 使用しているIAMユーザーまたはロールを見つけます。ユーザー名またはロール名を選択し、関連するポリシーを確認します。

  3. ポリシーのアクセス許可が正しいことを確認します。確認するポリシーを選択し、[Edit policy] (ポリシーの編集) を選択します。デフォルトで開くビジュアルエディタを使用します。代わりにJSONエディタが開いている場合は、ビジュアルエディタタブを選択します。

  4. リスト内の S3 エントリを選択し、その内容を確認します。ポリシーでは、リスト、読み取り、書き込みのアクセス権限を付与する必要があります S3 がリストにない場合、または適切なアクセス許可がない場合は、ここで追加します。

Amazon と連携するIAMポリシーの例については、 QuickSight「」を参照してくださいIAM Amazon の ポリシーの例 QuickSight

IAM ユーザーに S3 ロケーションへの読み取り/書き込みアクセス権があることを確認します。

   対象者: Amazon QuickSight 管理者 

Amazon から Athena データにアクセスするには QuickSight、まず Athena とその S3 ロケーションが管理 QuickSight画面で承認されていることを確認してください。詳細については、「Athena の使用を Amazon QuickSight に許可していることを確認します。」を参照してください。

次に、関連するIAMアクセス許可を確認します。Athena 接続のIAMユーザーには、結果が S3 に送信される場所への読み取り/書き込みアクセスが必要です。まず、IAMユーザーに などの Athena へのアクセスを許可するポリシーがアタッチされていることを確認しますAmazonAthenaFullAccess。Athena に必要な名前を使用してバケットを作成し、このバケットを QuickSight がアクセスできるバケットのリストに追加します。結果バケット (aws-athena-query-results-*) のデフォルトの場所を変更する場合は、IAMユーザーに新しい場所に読み書きするアクセス許可があることを確認してください。

S3 に AWS リージョン コードを含めていないことを確認しますURL。たとえば、s3://us-east-1.amazonaws.com/awsexamplebucket/path ではなく s3://awsexamplebucket/path を使用します。間違った S3 を使用すると、Access DeniedエラーURLが発生します。

また、バケットポリシーとオブジェクトアクセスコントロールリスト (ACLs) で、IAMユーザーがバケット 内のオブジェクトにアクセスできることを確認します。IAM ユーザーが別の にいる場合は AWS アカウント、Amazon Athena ユーザーガイド」の「クロスアカウントアクセス」を参照してください。

データセットが暗号化されている場合は、指定されたキーのポリシーでIAMユーザーが AWS KMS キーユーザーであることを確認します。これは、https://console.aws.amazon.com/kms の AWS KMS コンソールで実行できます。

Athena クエリ結果の場所へのアクセス許可を設定するには
  1. https://console.aws.amazon.com/athena/ から Athena コンソールを開きます。

  2. 使用するワークグループが選択されていることを確認します。

    • 上部の [Workgroup] (ワークグループ) オプションを検証します。形式は Workgroup です。group-name。 グループ名が使用するグループ名である場合は、次のステップに進みます。

    • 別のワークグループを選択するには、上部の [Workgroup] (ワークグループ) を選択します。使用するワークグループを選択し、[Switch workgroup] (ワークグループの切り替え) を選択します。

  3. 右上の [Settings] (設定) を選択します。

    (一般的ではありません) 「ワークグループが見つかりません」というエラーが表示された場合は、以下のステップに従って修正します。

    1. 現時点ではエラーメッセージを無視し、代わりにワークグループを見つけてください。group-name 設定ページの 。ワークグループ名はハイパーリンクです。ワークグループ名を開きます。

    2. ワークグループの場合:<groupname> ページで、左側のワークグループの編集を選択します。エラーメッセージを閉じます。

    3. [Query result location] (クエリ結果の場所) 近くで、ファイルフォルダアイコン付きの [Select] (選択) ボタンをクリックし、S3 ロケーションセレクターを開きます。

    4. Athena の S3 の場所名の末尾にある小さな矢印を選択します。名前は aws-athena-query-results で始まる必要があります。

    5. (オプション) クエリ結果を暗号化するには、[Encrypt results stored in S3] (S3 に保存されている結果を暗号化する) チェックボックスをオンにします。

    6. [Save (保存)] を選択し、設定を保存します。

    7. エラーが再び表示されない場合は、[Settings] (設定) に戻ります。

      場合によっては、エラーが再び表示されることがあります。この場合は、次のステップを実行します。

      1. [ワークグループ]、[View details] (詳細の表示) の順に選択します。

      2. (オプション) 設定を保持するには、ワークグループの設定を書き留めるか、スクリーンショットを撮ります。

      3. [Create workgroup] (ワークグループの作成) を選択します。

      4. ワークグループを新しいワークグループに置き換えます。正しい S3 の場所と暗号化オプションを設定します。後で必要になるため、S3 の場所を書き留めます。

      5. [Save] (保存) を選択して続行します。

      6. 元のワークグループが不要になった場合は、無効にします。表示される警告を注意して読んでください。無効にすると喪失するものがわかります。

  4. 前のステップでトラブルシューティングによって取得しなかった場合は、右上の [Settings] (設定) を選択し、[Query result location] (クエリ結果の場所) として表示される S3 ロケーションの値を取得します。

  5. クエリ結果の暗号化が有効になっている場合は、 - と SSE-KMS のどちらを使用しているかを確認してくださいCSEKMS。キーを書き留めます。

  6. で S3 コンソールを開きhttps://console.aws.amazon.com/s3/、正しいバケットを開き、アクセス許可タブを選択します。

  7. バケットポリシー を表示して、IAMユーザーにアクセス権があることを確認します。

    でアクセスを管理する場合はACLs、アクセスコントロールリスト (ACLs) を表示してアクセスコントロールリストが設定されていることを確認します。

  8. データセットが暗号化されている場合 (ワークグループ設定で暗号化クエリ結果が選択されている場合)、IAMそのキーの AWS KMS ポリシーでユーザーまたはロールがキーユーザーとして追加されていることを確認します。 AWS KMS 設定には https://console.aws.amazon.com/kms からアクセスできます。

Athena が使用する S3 バケットへのアクセスを許可するには
  1. で Amazon S3 コンソールを開きますhttps://console.aws.amazon.com/s3/

  2. [Query result location] (クエリ結果の場所) で、Athena が使用する S3 バケットを選択します。

  3. [Permissions] (アクセス許可) タブで、アクセス許可を確認します。

詳細については、 AWS 「サポート」の記事「Athena クエリを実行すると、「アクセスが拒否されました」というエラーが表示されます