スキップしてコンテンツを表示

拒否ポリシーを使用して Quick Suite に S3 バケットへのアクセスを許可する方法を教えてください。

所要時間1分
0

Amazon Simple Storage Service (Amazon S3) のバケットポリシーで Amazon Quick Suite からのアクセスが許可されていることを確認したいです。

簡単な説明

Amazon S3 バケットが Deny ポリシーを使用している場合、そのポリシーは Quick Suite コンソールで指定した S3 アクセス許可よりも優先されます。Amazon Quick Suite が S3 バケットにアクセスできるようにするには、Amazon Quick Sight サービスロール (aws-quicksight-service-role-v0) を Deny ポリシーの例外として追加します。

解決策

注: AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI で発生したエラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。

次の手順を実行します。

  1. Quick Suite に S3 バケットへのアクセス許可があることを確認します。

  2. aws-quicksight-service-role-v0 ロールの一意の ID を取得するには、get-role AWS CLI コマンドを実行します。

    aws iam get-role --role-name aws-quicksight-service-role-v0 --query 'Role.RoleId' --output json"AROAEXAMPLEID"

    注: AWS Identity and Access Management (IAM) の GetRole API コールを使用することもできます。ID は各 Quick Suite アカウントに固有です。

  3. (オプション) IAM ユーザーに例外を追加する場合は、get-user AWS CLI コマンドを実行してユーザーの一意の ID を検索します。

    aws iam get-user --user-name example-username

    注: example-username を IAM ユーザー名に置き換えてください。

  4. Amazon S3 コンソールを開きます。

  5. S3 バケットを選択します。

  6. [アクセス許可] タブを選択します。

  7. [バケットポリシー][編集] を選択します。

  8. 次の例を参考にバケットポリシーを入力します。

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Deny",
          "Principal": "*",
          "Action": "s3:*",
          "Resource": [
            "arn:aws:s3:::examplebucketname",
            "arn:aws:s3:::examplebucketname/*"
          ],
          "Condition": {
            "StringNotLike": {
              "aws:userid": [
                "AROAEXAMPLEID:*",
                "AIDAEXAMPLEUSERID"
              ]
            }
          }
        }
      ]
    }

    注: examplebucketname を自分の S3 バケット名に、AROAEXAMPLEID を固有の ID に置き換えてください。IAM ユーザーに例外を追加するには、AIDAEXAMPLEUSERID を IAM ユーザーの固有の ID に置き換えます。IAM ユーザーポリシーには、S3 バケットの Allow ステートメントも含まれている必要があります。

Quick Sight サービスロールと IAM ユーザーを削除すると、バケットからロックアウトされます。この問題を解決するには、AWS アカウントのルートユーザーとしてログインし、delete-bucket-policy AWS CLI コマンドを使用してバケットポリシーを削除します。

関連情報

Amazon S3 バケットアクセスを特定の IAM ロールに制限する方法

コメントはありません

関連するコンテンツ