カスタマーマネージドキー (CMK) を使用したエージェントリソースの暗号化 - Amazon Bedrock

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

カスタマーマネージドキー (CMK) を使用したエージェントリソースの暗号化

エージェントの構築時に指定された次のエージェント情報を使用し、いつでもカスタマーマネージドキーを作成してエージェントの情報を暗号化できます。

注記

次のエージェントリソースは、2025 年 1 月 22 日以降に作成されたエージェントに対してのみ暗号化されます。

Action CMK 対応フィールド 説明
CreateAgent instruction エージェントに、実行すべき動作、およびユーザーとやり取りする方法を指示します
basePromptTemplate デフォルトのプロンプトテンプレートを置き換えるプロンプトテンプレートを定義します。
CreateAgentActionGroup description アクショングループの説明
apiSchema エージェントアクショングループの apiSchema またはスキーマを定義する JSON または YAML 形式のペイロードの詳細が含まれます。
s3 エージェントアクショングループの apiSchema を含む Amazon S3 オブジェクトの詳細が含まれます。
functionSchema エージェントアクショングループの関数スキーマまたはスキーマを定義する JSON-YAML 形式のペイロードの詳細が含まれます。
AssociateAgentKnowledgeBase description エージェントによるナレッジベースの用途の説明
AssociateAgentCollaborator collaborationInstruction 共同作業者エージェントへの指示

カスタマーマネージドキーを使用するには、以下のステップを実行します。

  1. AWS Key Management Service でカスタマーマネージドキーを作成します。

  2. キーポリシーを作成してカスタマーマネージドキーにアタッチする

カスタマーマネージドキーを作成する

対称カスタマーマネージドキーは、 AWSマネジメントコンソールまたは AWS Key Management ServiceAPIs を使用して作成できます。

まず、CreateKey アクセス許可があることを確認し、「AWS Key Management Service デベロッパーガイド」の「対称カスタマーマネージドキーの作成」のステップに従います。

キーポリシー - キーポリシーは、カスタマーマネージドキーへのアクセスを制御します。すべてのカスタマーマネージドキーには、キーポリシーが 1 つだけ必要です。このポリシーには、そのキーを使用できるユーザーとその使用方法を決定するステートメントが含まれています。キーポリシーは、カスタマーマネージドキーの作成時に指定できます。詳細については、「AWS Key Management Service デベロッパーガイド」の「カスタマーマネージドキーへのアクセスを管理する」を参照してください。

2025 年 1 月 22 日以降にエージェントを作成し、カスタマーマネージドキーを使用してエージェントの情報を暗号化する場合は、エージェント API オペレーションを呼び出すユーザーまたはロールに、キーポリシーで次のアクセス許可が付与されていることを確認してください。

  • kms:GenerateDataKey - AWS KMS の外部で使用する一意の対称データキーを返します。

  • kms:Decrypt – KMS キーによって暗号化された暗号文を復号します。

キーの作成は、エージェントの作成時に customerEncryptionKeyArn として使用できるキーの Arn を返します。

キーポリシーを作成してカスタマーマネージドキーにアタッチする

カスタマーマネージドキーを使用してエージェントリソースを暗号化する場合、Amazon Bedrock がユーザーに代わってエージェントリソースを暗号化および復号できるように、ID ベースのポリシーとリソースベースのポリシーを設定する必要があります。

ID ベースのポリシー

ユーザーに代わってエージェントリソースを暗号化および復号するエージェント API を呼び出すアクセス許可を持つ IAM ロールまたはユーザーに、次の ID ベースのポリシーをアタッチします。このポリシーは、API コールを行うユーザーがAWS KMSアクセス許可を持っていることを検証します。${region}${account-id}${agent-id}${key-id} を適切な値に置き換えます。

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "EncryptAgents", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:us-east-1:123456789012:key/${key-id}", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:bedrock:arn": "arn:aws:bedrock:us-east-1:123456789012:agent/${agent-id}" } } } ] }

リソースベースのポリシー

Amazon S3 のスキーマが暗号化されているアクショングループを作成する場合にのみ、次のリソースベースのポリシーをAWS KMSキーにアタッチします。他のユースケースでは、リソースベースのポリシーをアタッチする必要はありません。

次のリソースベースのポリシーをアタッチするには、必要に応じてアクセス許可の範囲を変更し、${region}${account-id}${agent-id}${key-id} を適切な値に置き換えます。

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "Allow account root to modify the KMS key, not used by Amazon Bedrock.", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:root" }, "Action": "kms:*", "Resource": "arn:aws:kms:us-east-1:123456789012:key/${key-id}" }, { "Sid": "Allow Amazon Bedrock to encrypt and decrypt Agent resources on behalf of authorized users", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "arn:aws:kms:us-east-1:123456789012:key/${key-id}", "Condition": { "StringEquals": { "kms:EncryptionContext:aws:bedrock:arn": "arn:aws:bedrock:us-east-1:123456789012:agent/${agent-id}" } } } ] }

カスタマーマネージドキーの変更

Amazon Bedrock エージェントは、DRAFT エージェントに関連付けられたカスタマーマネージドキーが変更された場合、またはカスタマーマネージドキーからAWS所有キーに移行した場合、バージョニングされたエージェントの再暗号化をサポートしていません。DRAFT リソースのデータのみが新しいキーで再暗号化されます。

バージョニングされたエージェントのキーを使用して本番データを処理する場合、そのキーのアクセス許可を削除しないでください。

バージョンで使用されているキーを表示および確認するには、GetAgentVersion を呼び出し、レスポンスで customerEncryptionKeyArn を確認します。