Amazon Bedrock AgentCore メモリの暗号化
AgentCore メモリを作成するときは、データが安全で安全であることを確認することが重要です。アプリケーションが機密情報 (顧客の詳細、支払いデータ、個人チャットなど) を処理する場合は、暗号化を使用してこのデータを保護する必要があります。暗号化にカスタマーマネージド KMS キー (CMK) を使用することを検討してください。CMK を指定しない場合でも、サービスはサービスマネージドキーを使用してデータを暗号化します。または、 AWSマネージド KMS キーを使用することもできます。この場合、メモリの設定に使用する IAM ユーザーまたはロールに次のポリシーを追加する必要があります。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAgentCoreMemoryKMS", "Effect": "Allow", "Action": [ "kms:CreateGrant", "kms:Decrypt", "kms:DescribeKey", "kms:GenerateDataKey", "kms:GenerateDataKeyWithoutPlaintext", "kms:ReEncrypt*" ], "Resource": "arn:aws:kms:*:111122223333:key/*", "Condition": { "StringEquals": { "kms:ViaService": "bedrock-agentcore.us-east-1.amazonaws.com" } } } ] }
上記のセキュリティ設定に加えて、長期メモリを使用する場合は、プロンプトインジェクションとメモリポイズニングのリスクに注意する必要があります。
-
プロンプトインジェクションは、データベースアプリケーションの SQL インジェクションと同様に、アプリケーションレベルのセキュリティ上の懸念です。Amazon RDS や Amazon Aurora などの AWS サービスは安全なデータベースエンジンを提供しますが、お客様はアプリケーションへの SQL インジェクションを防止する責任があります。Amazon Bedrock は自然言語処理のための安全な基盤を提供しますが、お客様はコードのプロンプトインジェクションの脆弱性を防ぐ対策を講じる必要があります。さらに、 は、Bedrock およびその他の AWS サービスの安全なコーディングプラクティスに関する詳細なドキュメント、ベストプラクティス、ガイダンス AWS を提供します。
-
メモリポイズニングは、誤った情報または有害な情報が AgentCore Memory に保存されると発生します。後で、AI エージェントはこの間違った情報を将来の会話で使用する可能性があり、その結果、正しくない、または安全でない応答につながる可能性があります。
AWS 責任共有モデル
リスクを軽減するために、以下を実行できます。
-
Amazon Bedrock ガードレール : Amazon Bedrock ガードレールを使用して、AgentCore Memory との間で送受信されるプロンプトを確認します。これにより、安全で許可されたプロンプトのみがエージェントによって処理されます。
-
攻撃者テスト: 攻撃やプロンプトインジェクションをシミュレートして、AI アプリケーションの脆弱性を積極的にテストします。これにより、実際の脅威が発生する前に弱点を見つけて修正できます。