ラボ概要
Azure AI Services (Cognitive Services) のキーをコードに直書きしている脆弱な構成を、Key Vault + Managed Identity + ネットワーク制限で安全な構成に作り変えます。
シナリオ: あなたは高機能衛星打ち上げを行う Space Corp のセキュリティ エンジニアです。最近の社内会議で AI リソースのセキュリティ設定に不備があることが発覚しました。Cognitive Services のキーが Python コードに直書きされ、エンドポイントもインターネット全体に開かれています。あなたはこれらの不備を修正し、Space Corp の AI 基盤を安全な状態に戻す責任を負います。
学習目標:
- 既存の脆弱な Python コード(Cognitive Services キーが直書き)の問題点を特定する
- Cognitive Services のネットワーク アクセスを VNet からのみに制限する
- Key Vault に Cognitive Services キーをシークレットとして保管する
- VM の System Assigned Managed Identity と RBAC で、コードからキーをハードコードせずに参照する
- 環境変数経由および Key Vault 経由の 2 段階で安全性を高めるリファクタリングを体験する
前提知識: Linux SSH の基本、Python の読解、Azure RBAC の概念、VNet/Subnet の基本理解。
完了条件: Python スクリプト text_analytics.py から Cognitive Services キーが除去され、DefaultAzureCredential 経由で Key Vault からキーを取得して感情分析・キーフレーズ・エンティティ抽出が動作する状態。Cognitive Services と Key Vault の両方で Selected networks 設定により VM の VNet からのみアクセス可能になっていること。