翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
リソースベースのポリシーを使用したアクセスを共有する
注記
既存のリソースベースのポリシーを更新すると既存のポリシーが置き換えられるため、新しいポリシーには必要な情報をすべて含めるようにしてください。
クロスアカウント AWS Lambda 関数とアクセスを共有する
Lambda 演算子
- IAM コンソール - に移動して、 AWS Lambda 関数の Lambda 実行ロールとして使用する IAM ロールを作成します。必要な Kinesis Data Streams と Lambda 呼び出し権限を持つマネージド IAM ポリシー - AWSLambdaKinesisExecutionRoleを追加します。このポリシーは、ユーザーがアクセスする可能性のあるすべての Kinesis Data Streams リソースへのアクセスも付与します。
- AWS Lambda コンソール - で、Kinesis Data Streams データストリームのレコードを処理する AWS Lambda 関数を作成し、実行ロールのセットアップ中に、前のステップで作成したロールを選択します。 
- リソースポリシーを設定するための実行ロールを Kinesis Data Streams リソースの所有者に提供します。 
- Lambda 関数のセットアップを完了します。 
Kinesis Data Streams リソースの所有者
- Lambda 関数を呼び出すクロスアカウントの Lambda 実行ロールを取得します。 
- Amazon Kinesis Data Streams コンソールで、データストリームを選択します。[データストリーム共有] タブを選択し、[共有ポリシーの作成] ボタンをクリックしてビジュアルポリシーエディタを起動します。登録済みのコンシューマーをデータストリーム内で共有するには、コンシューマーを選択し、次に [共有ポリシーの作成] を選択します。JSON ポリシーを直接作成することもできます。 
- クロスアカウントの Lambda 実行ロールをプリンシパルとして指定し、アクセスを共有する正確な Kinesis Data Streams アクションを指定します。必ず - kinesis:DescribeStreamアクションを含めてください。Kinesis Data Streams リソースポリシーの例については、「Kinesis Data Streams のリソースベースのポリシーの例」を参照してください。
- [ポリシーの作成] を選択するか、PutResourcePolicy を使用してポリシーをリソースにアタッチします。 
クロスアカウントの KCL コンシューマーとのアクセスを共有する
- KCL 1.x を使用している場合は、KCL 1.15.0 以降を使用していることを確認してください。 
- KCL 2.x を使用している場合は、KCL 2.5.3 以降を使用していることを確認してください。 
KCL 演算子
- KCL アプリケーションを実行する IAM ユーザーまたは IAM ロールをリソース所有者に提供します。 
- リソース所有者にデータストリームまたはコンシューマー ARN を依頼してください。 
- KCL 設定の一部として、提供されたストリーム ARN を指定していることを確認してください。 - KCL 1.x の場合: KinesisClientLibConfiguration - コンストラクターを使用してストリーム ARN を指定します。 
- KCL 2.x の場合: Kinesis Client Library ConfigsBuilder - にストリーム ARN または StreamTracker - のみを指定できます。StreamTracker には、ライブラリによって生成される DynamoDB リーステーブルからストリーム ARN と作成エポックを指定します。拡張ファンアウトなどの登録済みの共有コンシューマーから読み込む場合は、StreamTracker を使用してコンシューマー ARN も指定してください。 
 
Kinesis Data Streams リソースの所有者
- KCL アプリケーションを実行するクロスアカウントの IAM ユーザーまたは IAM ロールを取得します。 
- Amazon Kinesis Data Streams コンソールで、データストリームを選択します。[データストリーム共有] タブを選択し、[共有ポリシーの作成] ボタンをクリックしてビジュアルポリシーエディタを起動します。登録済みのコンシューマーをデータストリーム内で共有するには、コンシューマーを選択し、次に [共有ポリシーの作成] を選択します。JSON ポリシーを直接作成することもできます。 
- クロスアカウントの KCL アプリケーションの IAM ユーザーまたは IAM ロールをプリンシパルとして指定し、アクセスを共有する正確な Kinesis Data Streams アクションを指定します。Kinesis Data Streams リソースポリシーの例については、「Kinesis Data Streams のリソースベースのポリシーの例」を参照してください。 
- [ポリシーの作成] を選択するか、PutResourcePolicy を使用してポリシーをリソースにアタッチします。 
暗号化されたデータへのアクセスを共有する
AWS マネージド KMS キーでデータストリームのサーバー側の暗号化を有効にしていて、リソースポリシーを介してアクセスを共有する場合は、カスタマーマネージドキー (CMK) の使用に切り替える必要があります。詳細については、「Kinesis Data Streams 用のサーバー側の暗号化とは?」を参照してください。さらに、KMS のクロスアカウント共有機能を使用して、共有プリンシパルエンティティが CMK にアクセスできるようにする必要があります。共有プリンシパルエンティティの IAM ポリシーも必ず変更してください。詳細については、「その他のアカウントのユーザーに KMS キーの使用を許可する」を参照してください。