ユーザー生成の KMS マスターキーを使用するための許可 - Amazon Kinesis Data Streams

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

ユーザー生成の KMS マスターキーを使用するための許可

ユーザーが生成した KMS マスターキーでサーバー側の暗号化を使用する前に、ストリームの暗号化とストリームレコードの暗号化と復号を許可する AWS KMS ようにキーポリシーを設定する必要があります。アクセス AWS KMS 許可の例と詳細については、AWS 「KMS API アクセス許可: アクションとリソースのリファレンス」を参照してください。

注記

暗号化のためのデフォルトサービスキーの使用では、カスタム IAM 許可の適用は必要ありません。

ユーザー生成 KMS マスターキーを使用する前に、Kinesis ストリームプロデューサーおよびコンシューマー (IAM プリンシパル) が、KMS マスターキーポリシーでユーザーになっていることを確認します。ユーザーになっていない場合は、ストリームに対する読み取りと書き込みが失敗し、最終的にはデータの損失、処理の遅延、またはアプリケーションのハングにつながる可能性があります。IAM ポリシーを使用して KMS キーの許可を管理できます。詳細については、AWS 「KMS での IAM ポリシーの使用」を参照してください。

プロデューサーのアクセス許可の例

Kinesis ストリームプロデューサーには kms:GenerateDataKey 許可が必要です。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:GenerateDataKey" ], "Resource": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, { "Effect": "Allow", "Action": [ "kinesis:PutRecord", "kinesis:PutRecords" ], "Resource": "arn:aws:kinesis:*:123456789012:MyStream" } ] }

コンシューマーのアクセス許可の例

Kinesis ストリームコンシューマーには kms:Decrypt 許可が必要です。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "arn:aws:kms:us-west-2:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab" }, { "Effect": "Allow", "Action": [ "kinesis:GetRecords", "kinesis:DescribeStream" ], "Resource": "arn:aws:kinesis:*:123456789012:MyStream" } ] }

Amazon Managed Service for Apache Flink と は、ロール AWS Lambda を使用して Kinesis ストリームを消費します。これらのコンシューマーが使用するロールには、kms:Decrypt 許可を追加するようにしてください。

ストリーム管理者の許可

Kinesis ストリーム管理者には、kms:List*kms:DescribeKey* を呼び出すための権限が必要です。