AI Gateway 向けの Data Loss Prevention(DLP、データ損失防止)は、AI とのやり取りで機密データが意図せず露出するのを防ぎます。Cloudflare の実績ある DLP 技術と統合し、受信プロンプトと送信 AI 応答の両方をスキャンします。AI アプリケーションのセキュリティとコンプライアンス基準を維持できます。
AI Gateway DLP は、Cloudflare のデータ損失防止 と同じ検出エンジンを使い、AI トラフィックをリアルタイムでスキャンします。AI モデルへ送るユーザープロンプトと、AI プロバイダーから受け取る応答の両方を分析します。機密データのパターンを特定し、適切な保護アクションを実行します。
- データ漏洩を防ぐ: 機密情報が AI プロバイダーに意図せず共有されたり、AI 応答に含まれたりするのを止めます
- コンプライアンスを維持する: GDPR、HIPAA、PCI DSS などの規制要件への対応を支援します
- 一貫した保護: すべての AI プロバイダーとモデルに同じ DLP ポリシーを適用します
- 監査の可視性: セキュリティとコンプライアンスチーム向けの包括的なログとレポート
- コード変更なしの統合: 既存の AI アプリケーションを変更せずに保護を有効にできます
AI Gateway DLP がスキャンできる対象は次のとおりです。
- ユーザープロンプト - AI モデルに送るコンテンツ。テキスト、コード、構造化データを含みます
- AI 応答 - ユーザーに返す前の、AI モデルの出力
AI Gateway が対応するすべての AI プロバイダーで動作します。使うモデルやサービスに関係なく、同じ保護を適用します。
DLP は、AI Gateway を通過するリクエストと応答の本文テキストを検査します。詳細は次のとおりです。
- 非ストリーミングのリクエストと応答: DLP はリクエストと応答の本文全体をスキャンします。
- ストリーミング(SSE)応答: DLP はストリーミング応答をすべてバッファしてからスキャンします。そのため、DLP スキャン済みのストリーミング応答は、クライアントへ増分配信されません。ストリーミングリクエストで DLP 応答スキャンを有効にすると、time-to-first-token のレイテンシが増えます。プロバイダーから応答全体を受け取ってから DLP が評価し、クライアントへ解放するためです。
- ツール呼び出しの引数と結果: DLP はメッセージ本文のテキストをスキャンします。JSON のリクエストまたは応答ペイロードにツール呼び出しの引数や結果があれば、それも含みます。
- Base64 エンコードの画像とファイル添付: DLP は Base64 エンコードコンテンツをデコードせず、外部 URL もたどりません。検査するのはリクエストと応答本文の生テキストだけです。
- Multipart フォームデータ: DLP はリクエスト本文のテキスト部分をスキャンします。multipart ペイロード内のバイナリデータは検査しません。
DLP 応答スキャンが有効で、クライアントがストリーミングリクエスト("stream": true)を送ると、AI Gateway はプロバイダー応答をすべてバッファしてから DLP 検査を実行します。DLP なしのリクエストでは、ストリーミングチャンクはそのままクライアントへ転送されます。
このバッファリングのため:
- Time-to-first-token のレイテンシは、応答生成時間全体に比例して増えます。
- リクエストのみの DLP スキャン(Check が Request の場合)は応答をバッファせず、ストリーミングレイテンシへの影響はありません。
- 同じゲートウェイで DLP を使いながら、一部リクエストだけ低レイテンシストリーミングが必要な場合は、DLP ポリシーの Check を Request のみにするか、レイテンシ重視のトラフィックと DLP スキャン対象を別ゲートウェイに分けてください。
DLP スキャンはキャッシュミスのあと、AI Gateway がプロバイダーへリクエストを転送し、応答を受け取ったときに実行されます。DLP の結果がキャッシュに与える影響は次のとおりです。
| DLP の結果 | 応答をキャッシュするか | 挙動 |
|---|---|---|
| Pass(検出なし) | はい | ゲートウェイのキャッシュ設定に従って、通常どおりキャッシュします。 |
| Flag | はい | 通常どおりキャッシュします。DLP の検出結果は cf-aig-dlp 応答ヘッダーに付き、ログにも記録されます。クライアントには元の応答を返します。 |
| Block | いいえ | プロバイダー応答は破棄し、DLP エラー応答(ステータス 400)に置き換えます。 |
キャッシュヒットでは DLP スキャンをスキップします。 後続の同一リクエストがキャッシュ応答に一致すると、AI Gateway は DLP を再実行せず、キャッシュから直接返します。キャッシュされるのは DLP を通過した応答(または Flag された応答。Block は対象外)だけなので、この動作は安全です。ただし、応答キャッシュ後に DLP ポリシーを更新しても、キャッシュ済み応答は再評価されません。キャッシュ TTL が切れるまで、そのまま配信されます。
DLP ポリシーの変更をすぐに反映するには、cf-aig-skip-cache ヘッダーで新しいリクエストのキャッシュをバイパスできます。詳細は Caching を参照してください。
DLP ポリシーはゲートウェイ単位で設定し、そのゲートウェイを通るすべてのリクエストに一律適用されます。特定の DLP プロファイルを選ぶヘッダーや、個別リクエストで DLP スキャンをバイパスするヘッダーはありません。
用途ごとに異なる DLP ポリシーが必要な場合(例: マルチテナントアプリケーションでのテナントごとの差)は、DLP 設定の異なるゲートウェイを分けて作り、アプリケーション側のロジックで適切なゲートウェイへルーティングしてください。
AI Gateway DLP は、Cloudflare One の DLP と同じ 検出プロファイル を使います。プロファイルはアカウントレベルの共有オブジェクトです。既存の定義済みまたはカスタムプロファイルを、Gateway HTTP ポリシー と AI Gateway DLP ポリシーの両方で再利用できます。
Cloudflare One Gateway DLP との主な違いは次のとおりです。
- Gateway プロキシや TLS 復号は不要 - AI Gateway は AI プロキシとしてトラフィックを直接検査します。Gateway HTTP フィルタリング や TLS 復号 の設定は不要です。
- ポリシー管理は別 - AI Gateway 向け DLP ポリシーは、Cloudflare One のトラフィックポリシーではなく、AI Gateway ダッシュボードでゲートウェイごとに設定します。
- ログは別 - AI Gateway の DLP イベントは、Cloudflare One の HTTP リクエストログではなく、AI Gateway ログ に出ます。
- プロファイルは共有 - DLP 検出プロファイル(定義済みとカスタム)は両製品で共有します。プロファイルの変更は、使っているすべての場所に適用されます。
Cloudflare の DLP 機能の詳細は、データ損失防止のドキュメント を参照してください。
AI Gateway で DLP を有効にするには:
- AI Gateway 向けに DLP ポリシーを設定 します
- 検出プロファイルと応答アクションを設定します
- Cloudflare ダッシュボードで DLP イベントを監視します