Azure 上の AI ワークロードのセキュリティに関する推奨事項
この記事では、Azure で AI ワークロードを実行している組織向けのセキュリティに関する推奨事項を紹介します。 Azure AI Studio、Azure OpenAI、Azure Machine Learning、Azure AI サービスなどの「Azure AI サービスとしてのプラットフォーム (PaaS)」ソリューションに焦点を当てています。 生成型と非生成型両方の AI ワークロードが対象です。
AI がビジネス オペレーションに統合されるにつれ、これらのリソースを潜在的な脅威から保護することは、データの整合性とコンプライアンスを維持するために極めて重要になっています。 標準化されたセキュリティ ベースラインを適用し、適切に設計されたフレームワークに従うことで、組織は AI インフラストラクチャを脆弱性から保護することができます。
AI リソースの保護
AI リソースの保護とは、セキュリティ ベースラインとベスト プラクティスを適用して、Azure 上の AI ワークロードに使用されるインフラストラクチャを保護することを意味します。 この保護により、外部の脅威からのリスクを最小限に抑え、組織全体で一貫したセキュリティ体制を確保することができます。
Azure AI プラットフォームをセキュリティで保護します。 すべての AI リソースに対する Azure セキュリティ ベースラインのアプリケーションを標準化します。 Azure Well-Architected Framework 内の Azure サービス ガイド のセキュリティに関する推奨事項に従います。
Azure AI プラットフォームのセキュリティ ベースライン | Azure Well-Architected Framework のサービス ガイド |
---|---|
Azure Machine Learning | Azure Machine Learning |
Azure AI Studio | |
Azure OpenAI | Azure OpenAI |
AI モデルをセキュリティで保護する
AI モデルのセキュリティ保護とは、脅威防止の実装、プロンプト インジェクション リスクの監視、モデルの整合性の検証、ガバナンスの一元化を意味します。 これらのプラクティスにより、AI モデルは悪意のある操作から安全に保たれ、信頼性が維持され、正確な結果が得られることが保証されます。
すべての AI モデルに脅威保護を実装します。 Microsoft Defender for Cloud を使用して、プロンプト インジェクション攻撃やモデル操作などの脅威から AI モデルを保護します。 このツールは、AI ワークロードを継続的に監視し、新たな脅威の検出と防止を支援します。 すべてのワークロードにこの保護を実装することで、組織全体で一貫したセキュリティ体制が確保されます。
出力を監視し、プロンプト シールドを適用します。 AI モデルから返されるデータを定期的に検査し、悪意のある、または予測不可能なユーザー プロンプトに関連するリスクを検出して軽減します。 プロンプト シールドを実装して、生成 Al モデルに対するユーザーによる入力攻撃のリスクについてテキストをスキャンします。
モデルの検証を確認します。 使用中のすべての AI モデルが正当で安全であることを確認するための、会社全体の検証メカニズムを確立します。 オープン ソース モデルを使用する場合は、モデル署名またはその他の検証プロセスを使用して AI モデルの真正性を確認し、未承認モデルや改ざんされたモデルがデプロイされるのを防ぎます。
AI ゲートウェイの使用を検討してください。 Azure API Management (APIM) は、AI ワークロード全体で一貫したセキュリティを確保するのに役立ちます。 トラフィック制御とセキュリティの適用には、組み込みのポリシーを使用します。 APIM と Microsoft Entra ID を統合して認証と承認を一元化し、承認されたユーザーまたはアプリケーションのみが AI モデルと対話できるようにします。 リバース プロキシのマネージド ID に対して最小特権アクセスを構成していることを確認してください。 詳細については、「APIM による AI 認証」を参照してください
AI アクセスのセキュリティ保護
AI アクセスのセキュリティ保護には、管理プレーンと AI リソースへの外部アクセスの両方に対する認証と承認の制御の確立が含まれます。 適切なアクセス管理により、リソースの使用は、検証済みのアクセス許可を持つユーザーのみに制限されます。 これにより、AI モデルとの不正な対話の可能性を減らすことができます。 ロールベースのアクセスや条件付きアクセス ポリシーなどの強力なアクセス制御は、機密データを保護し、セキュリティ標準への準拠を維持するのに役立ちます。
リソースとアクセス制御を整理します。 個別のワークスペースを使用して、データセット、モデル、実験などの AI 成果物を整理および管理します。 ワークスペースはリソース管理を一元化し、アクセス制御を簡素化します。 たとえば、Azure AI Studio 内のプロジェクトを使用してリソースとアクセス許可を効率的に管理し、セキュリティ境界を維持しながらコラボレーションを促進します。
認証には Microsoft Entra ID を使用します。 可能な限り、認証には Microsoft Entra ID を使用し、静的 API キーを排除します。 この手順により、一元化された ID 管理によるセキュリティが強化され、シークレット管理のオーバーヘッドが軽減されます。 また、API キーの配布も制限できます。 代わりに、認証には API キーよりも Microsoft Entra ID の ID を優先して使用ます。 API キーへのアクセス権を持つ個人の一覧を監査して、それが最新であることを確認します。 認証ガイダンスについては、Azure AI Studio、Azure OpenAI、Azure AI サービス、Azure Machine Learning に関するページを参照してください。
認証を構成します。 多要素認証 (MFA) を有効にし、機密性の高いアカウントの場合は、セカンダリ管理アカウントまたは Privileged Identity Management (PIM) を使用した Just-In-Time アクセスを優先します。 プライベート ネットワークへの安全なエントリ ポイントとして Azure Bastion などのサービスを使用して、コントロール プレーンのアクセスを制限します。
条件付きアクセス ポリシーを使用します。 異常なサインイン アクティビティや不審な行動に対応するリスクベースの条件付きアクセス ポリシーを導入します。 ユーザーの位置情報、デバイスの状態、サインイン動作などのシグナルを使用して、追加の検証手順をトリガーします。 セキュリティ強化のため、重要な AI リソースへのアクセスに MFA を義務づけます。 地理的な場所や信頼できる IP 範囲に基づいて AI インフラストラクチャへのアクセスを制限します。 準拠デバイス (セキュリティ要件を満たすデバイス) のみが AI リソースにアクセスできるようにします。
最小特権アクセスを構成します。 ロールベースのアクセス制御 (RBAC) を実装して最小特権アクセスを構成し、データやサービスへの最小限のアクセスを提供します。 ユーザーおよびグループに、それぞれの責任に基づいてロールを割り当てます。 Azure RBAC を使用して、仮想マシンやストレージ アカウントなどの特定のリソースに対するアクセス制御を微調整します。 ユーザーが自分のタスクを実行するために必要な最小レベルのアクセス権のみを持っていることを確認します。 特権クリープを防ぐため、定期的に権限を見直し、調整します。 たとえば、 にします。
ロール アクセス許可の例 データ サイエンティスト データ ストレージへの読み取り/書き込みアクセス、トレーニング ジョブを実行するためのアクセス許可、モデル トレーニング環境へのアクセス。 AI 開発者 開発環境へのアクセス、デプロイのアクセス許可、AI アプリケーションを変更する能力。 IT 管理者 インフラストラクチャ、ネットワーク構成、セキュリティ ポリシーを管理するためのフル アクセス。 Azure サービス間の対話をセキュリティで保護します。 マネージド ID を使用して、Azure サービスが資格情報を管理せずに相互に認証できるようにします。
AI モデル エンドポイントへの外部アクセスをセキュリティで保護します。 AI モデル エンドポイントにアクセスするときに、Microsoft Entra ID を使用した認証をクライアントに要求します。 AZURE API Management を AI モデル エンドポイントの前の AI ゲートウェイとして使用して、アクセス ポリシーを適用し、使用状況を制御し、監視機能を提供することを検討してください。
セキュリティで保護された AI 実行
AI の実行をセキュリティで保護するには、仮想アシスタントや自律型エージェントなどの AI エージェントがユーザーの要求に応じてコードを実行するプロセスを保護する必要があります。 実行環境の分離、コード レビューの実施、リソース制限の設定を行います。 これらの対策は、このような実行がシステムの安定性やセキュリティを損なわないようにするのに役立ちます。 これらのプラクティスは、悪意のあるアクティビティを防ぎ、AI エージェントが動作するシステムの整合性を保護し、セキュリティで保護されたフレームワーク内で確実に機能できるようにします。
分離メカニズムを実装します。 Azure Container Apps のダイナミック セッションなどの動的セッション管理を利用して、各コード実行が、使用後に破棄される新しい分離された環境で実行されるようにします。
実行コードをセキュリティで保護します。 AI エージェントが実行するスクリプトをデプロイする前に、徹底的なコード レビューとテストを実施します。 このプロセスは、潜在的な脆弱性を特定して軽減するのに役立ちます。 バージョン管理システムを使用してコードの変更を管理し、承認されたバージョンのスクリプトのみが実行されるようにします。
リソースの制限を実装します。 コード実行環境のリソース制限 (CPU、メモリ、ディスク使用量) を設定し、単一の実行で過剰なリソースが消費され、他のサービスが中断される可能性を防ぎます。 実行タイムアウトを定義して、実行時間の長いプロセスやスタックしている可能性のあるプロセスが自動的に終了されるようにします。
詳細については、「Azure OpenAI サービス を使用してアシスタントを作成する方法」、「Azure OpenAI アシスタント関数呼び出しを使用する方法」、「エージェントの実装」に関するページを参照してください。