AI Defense 計装の追加
20 minutesSplunk AI Security Monitoringは、Splunk Observability for AIと Cisco AI Defense を統合します。 AIエージェントのランタイムで検出されたセキュリティおよびプライバシーリスクを一元的に表示し、パフォーマンスとリスクを一箇所で監視できます。
Splunk AI Security Monitoringでは、以下のことが可能です:
- プロンプトインジェクションやPII漏洩などの検出またはブロックされたセキュリティおよびプライバシーリスクに関連するエージェント、インタラクション、サービスを特定する
- リスクの傾向をレイテンシ、エラー、その他のパフォーマンスメトリクスとともに時系列で追跡する
- トレースコンテキスト内でリスクのあるインタラクションを、特定のプロンプトとレスポンスまで掘り下げて調査する
このセクションでは、Agentic AIアプリケーションにAI Defense統合を追加し、Splunk Observability Cloudで結果のデータを確認します。
仕組み
Splunk AI Security Monitoringは、PythonベースのAIエージェント向けにセキュリティおよびプライバシーリスクのトレースを自動化する計装ライブラリ opentelemetry-instrumentation-aidefense を提供します。
このライブラリは、AIエージェントがLLM(OpenAIなど)やオーケストレーションフレームワーク(LangChainなど)に対して行う呼び出しにセキュリティテレメトリをキャプチャしてアタッチし、すべてのプロンプトとレスポンスがセキュリティガードレールに対して監査され、統一されたOpenTelemetryトレース内に記録されることを保証します。これは、LLMまたはワークフロースパンに gen_ai.security.event_id attribute を追加することで実現されます。
SDK モード vs. Gateway モード
opentelemetry-instrumentation-aidefense ライブラリは、SDKモードまたはGatewayモードのいずれかで動作できます:
- SDKモードでは、開発者は
inspect_prompt()を使用して明示的なセキュリティチェックを追加します。このオプションは、セキュリティチェックの実装方法と問題への対処方法を完全に制御したい開発者に最適です。 - Gatewayモードでは、LLM呼び出しがCisco AI Defense Gatewayを経由してプロキシされるため、アプリケーションコードの変更は不要です。このモードは、OpenAI、Anthropicなどの一般的な商用LLMでサポートされています。
このワークショップでは、Azure OpenAIでGatewayモードを使用します。
Cisco AI Defense 統合のセットアップ
最初のステップは、Cisco AI Defense との統合をセットアップすることです。
Data Management -> Deployed integrations に移動し、AI Defense を検索すると、この統合がすでに構成されていることがわかります:
計装パッケージの追加
次に、いくつかの計装パッケージをインストールする必要があります。~/workshop/agentic-ai/base-app/requirements.txt を開いて編集し、以下のパッケージを追加します:
更新された Docker イメージのビルド
新しいタグを付けて更新されたDockerイメージをビルドします:
Kubernetes マニフェストの更新
Kubernetesマニフェストファイルを更新する前に、AI Defense Gateway URLを保存するためのシークレットを作成しましょう:
注意:インストラクターがシークレット作成時に使用する実際の AI Defense URL を提供します
~/workshop/agentic-ai/base-app/k8s.yaml ファイルを開いて編集し、以下の環境変数のみが含まれていることを確認します:
AZURE_OPENAI_ENDPOINTは AI Defense Gateway URL を使用するように構成されていることに注意してください。これにより、Azure OpenAI 宛てのリクエストが代わりにゲートウェイを経由して送信されます
同じファイルで、計装を含むイメージを使用するようにイメージを更新します:
更新されたアプリケーションのデプロイ
マニフェストファイルを使用して、更新されたアプリケーションを以下のようにデプロイできます:
Kubernetes でのアプリケーションのテスト
以下のコマンドを実行してアプリケーションをテストします。AI DefenseのPII検出をトリガーするために(偽の)クレジットカード番号を含めます:
Cisco AI Defense でのイベントの表示
AI Defenseアプリケーションに直接ログインすると、リクエストに対してイベントがログに記録され、AI Defenseがプロンプトに含めたクレジットカード番号を自動的にマスキングしたことがわかります:
AI Defenseでは、特定のタイプのセキュリティ問題を監視するかブロックするかを指定するポリシーを構成できることに注意してください。この場合、PCI関連の問題を監視するだけに設定しています。
Splunk Observability Cloud でのデータの表示
Splunk Observability Cloudに戻り、トレースがどのように見えるか確認しましょう。
APM に移動し、Agents を選択します。環境名が選択されていることを確認してください(例:agentic-ai-$INSTANCE)。ページにセキュリティリスクが含まれるようになったことがわかります!
APM -> Trace Analyzer に移動します。
環境名が選択されていることを確認してください(例:agentic-ai-$INSTANCE)。
新しいトレースの一つを選択します。トレースにセキュリティリスクが含まれるようになったことがわかります!
具体的には、アプリケーションで Privacy - PCI risk が検出された(ただしブロックされていない)ことがわかります:



