View a markdown version of this page

ベストプラクティス - Amazon Bedrock AgentCore

ベストプラクティス

AI エージェントアプリケーションで AgentCore Memory を効果的に使用するためのベストプラクティスを以下に示します。

メモリの暗号化

AgentCore Memory に保存されているデータは、保管時に常に KMS AWS キーを使用して暗号化されます。デフォルトでは、暗号化は AWS所有のマネージド KMS キーを使用します。オプションで、メモリの作成encryptionKeyArn時に を指定することで、独自の AWS アカウントからカスタマーマネージド KMS キーを設定して、暗号化をさらに制御できます。

メモリポイズニングまたはプロンプトインジェクション

CreateEvent API を介して会話データを処理し、LLM を介して長期メモリを抽出する場合、データの整合性やシステム動作を損なう可能性のあるメモリポイズニングやプロンプトインジェクション攻撃から保護することが重要です。これらのセキュリティ上の懸念は、メモリストアの破損やシステムレスポンスの操作につながる可能性があるため、重要です。

AWSの責任共有モデルに従い、Amazon Bedrock Amazon Bedrock AgentCore インフラストラクチャの保護を担当 AWS します。ただし、お客様は、安全なアプリケーション開発、入力検証、メモリ抽出サービスのプロンプトインジェクションの脆弱性の防止について責任を負います。これは、 が RDS などの安全なデータベースエンジン AWS を提供する方法と似ていますが、お客様はアプリケーションへの SQL インジェクションを防ぐ必要があります。

脅威

  • メモリポイズニングは、攻撃者が会話に誤った情報を埋め込んで長期的なメモリストアを破壊する脅威を表します。これは、誤解を招くコンテキストが将来のメモリ取得に影響を与えるコンテキスト汚染、または時間の経過とともにサービス品質を低下させるように設計された意図的なデータ整合性攻撃として現れる可能性があります。

  • プロンプトインジェクション攻撃は、メモリ抽出中にユーザーがシステムプロンプトを上書きしようとしたとき、または会話データ内の悪意のあるコンテンツが LLM の動作を操作したときに発生します。これらの攻撃には、ユーザーのアクセス許可を超えてメモリにアクセスまたは変更する権限エスカレーションの試みも含まれます。

防止手法

  • 入力検証は、CreateEventAPI レベルでの保護の基盤を形成します。メモリに永続化する前に、ガードレールを使用してユーザー入力データをサニタイズする

  • セキュリティテスト – 侵入テスト、静的コード分析、動的アプリケーションセキュリティテスト (DAST) などの手法を使用して、アプリケーションの迅速な挿入やその他のセキュリティの脆弱性を定期的にテストします。

最小特権の原則

ID ベースのポリシーは、アカウント内で Amazon Bedrock Amazon Bedrock AgentCore リソースを作成、アクセス、または削除できるかどうかを決定します。これらのアクションでは、 AWS アカウントのコストが発生する可能性があります。アイデンティティベースポリシーを作成したり編集したりする際には、以下のガイドラインと推奨事項に従ってください:

  • AWS 管理ポリシーを開始し、最小特権のアクセス許可に移行する – ユーザーとワークロードにアクセス許可の付与を開始するには、多くの一般的なユースケースにアクセス許可を付与する AWS 管理ポリシーを使用します。これらは AWS アカウントで使用できます。ユースケースに固有の AWS カスタマー管理ポリシーを定義することで、アクセス許可をさらに減らすことをお勧めします。

  • 最小特権を適用する – IAM ポリシーでアクセス許可を設定する場合は、タスクの実行に必要な許可のみを付与します。これを行うには、特定の条件下で特定のリソースに対して実行できるアクションを定義します。これは、最小特権アクセス許可とも呼ばれています。

  • IAM ポリシーで条件を使用してアクセスをさらに制限する - ポリシーに条件を追加して、アクションやリソースへのアクセスを制限できます。たとえば、ポリシー条件を記述して、特定の AgentCore Memory リソースのみがサービスロールを引き受けることができるように指定できます。

  • IAM Access Analyzer を使用して IAM ポリシーを検証し、安全で機能的なアクセス許可を維持するIAM Access Analyzer は、ポリシーが IAM ポリシー言語 (JSON) と IAM ベストプラクティスに準拠するように、新規および既存のポリシーを検証します。IAM Access Analyzer は 100 を超えるポリシーチェックと実用的な推奨事項を提供し、安全で機能的なポリシーを作成できるようサポートします。