機能 1。開発者とデータサイエンティストに生成 AI FMs への安全なアクセスを提供する (モデル推論) - AWS 規範ガイダンス

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

機能 1。開発者とデータサイエンティストに生成 AI FMs への安全なアクセスを提供する (モデル推論)

次のアーキテクチャ図は、この機能の生成 AI アカウントに推奨される AWS のサービスを示しています。この機能の範囲は、チャットやイメージ生成のための基盤モデル (FMsへのアクセスをユーザーに許可することです。

モデル推論用の生成 AI アカウントに推奨される AWS のサービス

生成 AI アカウントは、Amazon Bedrock を使用して生成 AI 機能を保護することに専念しています。このガイド全体で、このアカウント (およびアーキテクチャ図) を機能で構築します。アカウントには、ユーザーの会話を保存し、プロンプトストアを維持するためのサービスが含まれています。アカウントには、セキュリティガードレールと一元化されたセキュリティガバナンスを実装するためのセキュリティサービスも含まれています。ユーザーは、ID プロバイダー (IdP ) を使用して、生成 AI アカウントの仮想プライベートクラウド (VPC) に安全にアクセスすることで、フェデレーティッドアクセスを取得できます。AWS PrivateLink は、VPC から Amazon Bedrock エンドポイントサービスへのプライベート接続をサポートしています。VPC 環境がアクセスするように設定されている Amazon S3 のモデル呼び出しログとプロンプトストアバケットの Amazon S3 ゲートウェイエンドポイントを作成する必要があります。また、VPC 環境がアクセスするように設定されている CloudWatch ログの Amazon CloudWatch Logs ゲートウェイエンドポイントを作成する必要があります。

根拠

生成 AI FMs へのアクセス権をユーザーに付与すると、自然言語処理、画像生成、効率と意思決定の強化などのタスクに高度なモデルを使用できます。このアクセスは、従業員が新しいアプリケーションを試して最先端のソリューションを開発できるため、組織内のイノベーションを促進します。これにより、最終的に生産性が向上し、競争上の利点が得られます。このユースケースは、Generative AI Security Scoping Matrix のスコープ 3 に対応します。スコープ 3 では、組織は Amazon Bedrock で提供されているような事前トレーニング済みの FM を使用して生成 AI アプリケーションを構築します。このスコープでは、アプリケーションとアプリケーションで使用される顧客データを制御しますが、FM プロバイダーは事前トレーニング済みのモデルとそのトレーニングデータを制御します。さまざまなアプリケーションスコープに関連するデータフローや、ユーザーと FM プロバイダー間の責任共有に関する情報については、AWS ブログ記事「生成 AI の保護: 関連するセキュリティコントロールの適用」を参照してください。 

Amazon Bedrock で生成 AI FMs へのアクセスをユーザーに許可する場合は、以下の主要なセキュリティ上の考慮事項に対処する必要があります。 

  • モデルの呼び出し、会話履歴、プロンプトストアへの安全なアクセス 

  • 会話とプロンプトストアの暗号化

  • 迅速なインジェクションや機密情報の開示などの潜在的なセキュリティリスクのモニタリング    

次のセクションでは、これらのセキュリティ上の考慮事項と生成 AI 機能について説明します。 

セキュリティに関する考慮事項

生成 AI ワークロードは、モデル推論中の迅速なインジェクション攻撃など、固有のリスクに直面します。脅威アクターは、継続的な出力を強制する悪意のあるクエリを作成し、リソースを過剰に消費させたり、不適切なモデル応答を引き起こすプロンプトを作成したりする可能性があります。さらに、エンドユーザーは、プロンプトに機密情報を入力して、誤ってこれらのシステムを悪用する可能性があります。Amazon Bedrock は、データ保護、アクセスコントロール、ネットワークセキュリティ、ログ記録とモニタリング、入出力の検証のための堅牢なセキュリティコントロールを提供し、これらのリスクを軽減します。これらについては、以降のセクションで説明します。生成 AI ワークロードに関連するリスクの詳細については、Open Worldwide Application Security Project (OWASP) ウェブサイトの OWASP Top 10 for Large Language Model Applications および MITRE ウェブサイトの MITRE ATLAS を参照してください。 

修復

ID およびアクセス管理

IAM ユーザーには、ユーザー名やパスワードなどの長期的な認証情報があるため、使用しないでください。代わりに、AWS にアクセスするときに一時的な認証情報を使用します。一時的な認証情報を提供する IAM ロールを引き受けることで、人間のユーザーに ID プロバイダー (IdP) を使用して AWS アカウントへのフェデレーションアクセスを提供できます。

一元的なアクセス管理には、AWS IAM Identity Center を使用します。IAM Identity Center とさまざまなアーキテクチャパターンの詳細については、このガイドの「IAM の詳細セクション」を参照してください。 

Amazon Bedrock にアクセスするには、最小限のアクセス許可が必要です。Amazon Bedrock FMsはデフォルトでは付与されません。FM へのアクセスを取得するには、十分なアクセス許可を持つ IAM アイデンティティが Amazon Bedrock コンソールを介してアクセスをリクエストする必要があります。モデルアクセス許可を追加、削除、および制御する方法については、Amazon Bedrock ドキュメントの「モデルアクセス」を参照してください。 

Amazon Bedrock へのアクセスを安全に提供するには、要件に応じて Amazon Bedrock ポリシーの例をカスタマイズして、必要なアクセス許可のみが許可されるようにします。 

ネットワークセキュリティ

AWS PrivateLink では、VPC 内のプライベート IP アドレスを使用して、一部の AWS サービス、他の AWS アカウントによってホストされるサービス (エンドポイントサービスと呼ばれる)、およびサポートされている AWS Marketplace パートナーサービスに接続できます。インターフェイスエンドポイントは、VPC のサブネット内の Elastic Network Interface と IP アドレスを使用して VPC 内で直接作成されます。このアプローチでは、Amazon VPC セキュリティグループを使用してエンドポイントへのアクセスを管理します。AWS を使用して、トラフィックをインターネット PrivateLinkに公開せずに VPC から Amazon Bedrock エンドポイントサービスへのプライベート接続を確立します。 は、Amazon Bedrock サービスアカウントの API エンドポイントへのプライベート接続PrivateLink を提供するため、VPC 内のインスタンスが Amazon Bedrock にアクセスするためにパブリック IP アドレスを必要としません。 

ログ記録とモニタリング

モデルの呼び出しログ記録を有効にします。モデル呼び出しログ記録を使用して、AWS アカウント内のすべての Amazon Bedrock モデル呼び出しの呼び出しログ、モデル入力データ、モデル出力データを収集します。デフォルトでは、ログ記録は無効になっています。呼び出しログ記録を有効にして、アカウントで実行されるすべての呼び出しに関連付けられた完全なリクエストデータ、レスポンスデータ、IAM 呼び出しロール、メタデータを収集できます。

重要

呼び出しログデータに対する完全な所有権と制御を維持し、IAM ポリシーと暗号化を使用して、許可された担当者のみがデータにアクセスできるようにします。AWS もモデルプロバイダーも、データに対する可視性やアクセス権限を持っていません。

ログデータが公開される送信先リソースを提供するようにログ記録を設定します。Amazon Bedrock は、Amazon CloudWatch Logs や Amazon Simple Storage Service (Amazon S3) などの送信先のネイティブサポートを提供します。モデル呼び出しログを保存するように両方のソースを設定することをお勧めします。 

自動不正使用検出メカニズムを実装して、迅速な挿入や機密情報の開示など、潜在的な不正使用を防止します。潜在的な誤用が検出されたときに管理者に通知するようにアラートを設定します。これは、メトリクス CloudWatch に基づくカスタム CloudWatchメトリクスとアラームによって実現できます。

AWS を使用して Amazon Bedrock API CloudTrailアクティビティをモニタリングします。エンドユーザー向けに、一般的に使用されるプロンプトをプロンプトストアに保存して管理することを検討してください。プロンプトストアには Amazon S3 を使用することをお勧めします。 

設計上の考慮事項

このアプローチは、コンプライアンス要件とプライバシー要件に照らして評価する必要があります。モデル呼び出しログは、モデルの入力とモデルプットの一部として機密データを収集する場合があり、ユースケースには適さない場合があり、場合によっては、リスクコンプライアンスの目的を満たさない場合があります。

入力と出力の検証

Amazon Bedrock モデルを操作するユーザーに Amazon Bedrock のガードレールを実装する場合は、ガードレールを本番環境にデプロイし、アプリケーションでガードレールのバージョンを呼び出す必要があります。これには、Amazon Bedrock API とインターフェイスするワークロードを作成して保護する必要があります。 

推奨される AWS サービス

注記

このセクションで説明されている AWS のサービスおよびその他の機能は、このセクションで説明されているユースケースに固有のものです。さらに、すべての AWS アカウントに AWS Security Hub、Amazon GuardDuty、AWS Config、IAM Access Analyzer、AWS CloudTrail 組織証跡などの一連の一般的なセキュリティサービスを用意して、一貫したガードレールを可能にし、組織全体で一元的なモニタリング、管理、ガバナンスを提供する必要があります。 これらのサービスの機能とアーキテクチャのベストプラクティスを理解するには、このガイドの前半にある「すべての AWS アカウント内での一般的なセキュリティサービスのデプロイ」セクションを参照してください。

Amazon S3

Amazon S3 は、スケーラビリティ、データ可用性、セキュリティ、パフォーマンスを提供するオブジェクトストレージサービスです。推奨されるセキュリティのベストプラクティスについては、Amazon S3 ドキュメント、オンライン技術トーク、ブログ記事の詳細な説明を参照してください。

モデル呼び出しログ一般的に使用されるプロンプトを S3 バケットのプロンプトストアとしてホストします。 S3 バケットは、ユーザーが作成、所有、管理するカスタマーマネージドキーで暗号化する必要があります。ネットワークセキュリティを強化するために、VPC 環境がアクセスするように設定されている S3 バケットのゲートウェイエンドポイントを作成できます。アクセスはログに記録し、モニタリングする必要があります。

バックアップにバージョニングを使用し、Amazon S3 オブジェクトロック でオブジェクトレベルのイミュータビリティを適用します。オブジェクトロックが有効になっているデータが個人を特定できる情報 (PII) と見なされると、プライバシーコンプライアンスの問題が発生する可能性があります。このリスクを軽減し、セーフティネットを提供するには、オブジェクトロックのコンプライアンスモードの代わりにガバナンスモードを使用します。リソースベースのポリシーを使用して、Amazon S3 ファイルへのアクセスをより厳密に制御できます。 

Amazon CloudWatch

Amazon CloudWatch は、アプリケーションをモニタリングし、パフォーマンスの変化に対応し、リソースの使用を最適化し、運用状態に関するインサイトを提供します。AWS リソース間でデータを収集することで、 CloudWatch はシステム全体のパフォーマンスを可視化し、アラームの設定、変更への自動対応、運用状態の統合ビューの取得を可能にします。 

CloudWatch を使用して、Amazon Bedrock と AmazonS3 の変更を記述するシステムイベントをモニタリングしてアラームを生成します。プロンプトがプロンプトインジェクションまたは機密情報の開示を示している可能性がある場合に管理者に通知するアラートを設定します。これは、ログパターンに基づくカスタム CloudWatch メトリクスとアラームによって実現できます。 CloudWatch Logs のログデータは、ユーザーが作成、所有、管理するカスタマーマネージドキーで暗号化します。ネットワークセキュリティを強化するために、VPC 環境がアクセスするように設定されている CloudWatch Logs のゲートウェイエンドポイントを作成できます。Security OU Security Tooling アカウントで Amazon CloudWatch Observability Access Manager を使用して、モニタリングを一元化できます。最小特権の原則を使用して、 CloudWatch Logs リソースへのアクセス許可を管理します。 

AWS CloudTrail

AWS CloudTrail は、AWS アカウントのアクティビティのガバナンス、コンプライアンス、監査をサポートしています。 CloudTrailを使用すると、AWS インフラストラクチャ全体のアクションに関連するアカウントアクティビティをログに記録し、継続的にモニタリングし、保持できます。 

CloudTrail を使用して、Amazon Bedrock および Amazon S3 に対するすべての作成、読み取り、更新、削除 (CRUD) アクションをログに記録してモニタリングします。詳細については、Amazon Bedrock ドキュメントの「AWS l を使用した Amazon Bedrock API コールのログ記録 CloudTrai」および Amazon Amazon S3ドキュメントの「AWS を使用した Amazon S3 API コールのログ記録 CloudTrail」を参照してください。 Amazon S3

CloudTrail Amazon Bedrock からの ログには、プロンプト情報と完了情報は含まれません。組織内のすべてのアカウントのすべてのイベントを記録する組織の証跡を使用することをお勧めします。 生成 AI アカウントからセキュリティ OU CloudTrail ログアーカイブアカウントにすべてのログを転送します。一元化されたログを使用すると、Amazon S3 オブジェクトへのアクセス、ID による不正なアクティビティ、IAM ポリシーの変更、および機密性の高いリソースで実行されるその他の重要なアクティビティをモニタリング、監査、アラートを生成できます。詳細については、「AWS のセキュリティのベストプラクティス」を参照してください CloudTrail。

Amazon Macie

Amazon Macie は、フルマネージド型のデータセキュリティおよびデータプライバシーサービスで、機械学習とパターンマッチングを使用して AWS の機密データを検出し、保護します。ワークロードが処理しているデータのタイプと分類を特定して、適切なコントロールが確実に適用されるようにする必要があります。Macie は、S3 バケットに保存されているプロンプトストアおよびモデル呼び出しログ内の機密データを識別するのに役立ちます。Macie を使用して、Amazon S3 内の機密データの検出、ログ記録、およびレポートを自動化できます。これは、機密データの自動検出を実行するように Macie を設定する方法と、機密データ検出ジョブを作成して実行する方法の 2 つの方法で行うことができます。詳細については、Macie ドキュメントのAmazon Macie による機密データの検出」を参照してください。