AWS re:Postを使用することにより、以下に同意したことになります AWS re:Post 利用規約

Amazon S3 バケットに書き込む際の Kinesis Data Firehose の「アクセスが拒否されました」エラーの解決方法を教えてください。

所要時間1分
0

Amazon Kinesis Data Firehose から Amazon Simple Storage Service (Amazon S3) バケットにデータを書き込みたいと考えています。Amazon S3 バケットは、AWS Key Management Service (AWS KMS) によって暗号化されており、「アクセスが拒否されました」というエラーメッセージが表示されます。

解決策

「アクセスが拒否されました」エラーを解決するには、AWS KMS キーポリシーを変更します。または、Kinesis Data Firehose に AWS Identity and Access Management (IAM) ロールを追加します。

AWS KMS キーポリシーを変更する

AWS KMS キーポリシーを変更するには、次の手順を実行します。

1.    AWS KMS コンソールを開きます。

2.    S3 バケットの暗号化に現在使用されている KMS キーを選択します。

3.    ポリシービューへの切り替えをクリックします。

4.    必要なアクセス許可が AWS KMS キーポリシーにあることを確認します。

5.    ポリシーを更新して、Kinesis Data Firehose に AWS KMS キーへのアクセス許可を付与します。

{            "Sid": "Allow use of the key",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::<account-ID>:role/<FirehoseRole>"
            },
            "Action": [
                "kms:Encrypt",
                "kms:Decrypt",
                "kms:ReEncrypt*",
                "kms:GenerateDataKey*",
                "kms:DescribeKey"
            ],
            "Resource": "<ARN of the KMS key>"
}

**注:**前述のポリシーでは、S3 バケットを暗号化する AWS KMS キーの ARN を指定します。

6.    保存を選択します。

Kinesis Data Firehose IAM ロールを追加する

重要:Kinesis Data Firehose の IAM ロールに必要な Amazon S3 権限があることを確認します

Kinesis Data Firehose IAM ロールを追加するには、次の手順を実行します。

1.    AWS KMS コンソールを開きます。

2.    S3 バケットの暗号化に現在使用されている KMS キーを選択します。

3.    キーユーザーセクションで、追加を選択します。

4.    Kinesis Data Firehose IAM ロールを選択します。

5.    追加 を選択します。

関連情報

Editing keys

コメントはありません