Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

AI Security for Apps を始める

最終更新 Markdown で表示Agent セットアップ

1. AI Security for Apps をオンにする

  1. Cloudflare ダッシュボードで、Security の Settings ページを開きます。

    Settings を開く ↗
  2. (任意)Detection tools で絞り込みます。

  3. AI Security for Apps をオンにします。

次のような PUT リクエストで機能を有効にします。

curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/ai-security/settings" \
--request PUT \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{ "enabled": true }'

2. LLM 関連のオペレーションを確認または追加する

ドメインを Cloudflare に オンボード し、一部の API トラフィックがすでに Cloudflare でプロキシ されていると、Cloudflare ダッシュボードに 検出されたエンドポイント が表示され始めます。

Web Assets で、LLM 関連トラフィックを受け取っている検出済みオペレーションを保存し、full 状態へ移します。Cloudflare がオペレーションを検出していない場合は、手動で追加します。

  1. Cloudflare ダッシュボードで Web Assets ページを開きます。

    Web assets を開く ↗
  2. Discovery タブを開きます。

  3. LLM プロンプト付きのリクエストを受け取っている候補オペレーションを見つけ、Save を選択して full 状態へ移します。

Discovery タブにエンドポイントが見つからない場合は、手動で追加できます。

  1. Operations タブを開きます。
  2. Add operation > Manually add を選択します。
  3. メソッドを選び、オペレーションのホスト名パターンとパスパターンを追加します。
  4. Add operation を選択します。

このガイドでは、次のプロパティを持つエンドポイントを例にします。

  • メソッド: POST
  • パス: /v1/messages
  • ホスト名: <YOUR_HOSTNAME>

3. エンドポイントに cf-llm ラベルを付ける

AI Security for Apps が受信リクエストを悪意のある LLM プロンプトとしてスキャンし始めるには、エンドポイントに cf-llm ラベルを 付ける 必要があります。

追加したエンドポイントに cf-llm ラベルを付けます。

  1. Cloudflare ダッシュボードで Web assets ページを開きます。

    Web assets を開く ↗
  2. Endpoints タブで、ラベルを付けるエンドポイントを選びます。

  3. Edit endpoint labels を選択します。

  4. エンドポイントに cf-llm ラベルを追加します。

  5. Save labels を選択します。

エンドポイントにラベルを付けると、Cloudflare はそのエンドポイントへの受信トラフィックに、選択したラベルを付け始めます。

4. (任意)API トラフィックを生成する

次の手順で確認するラベル付きトラフィックを用意するために、エンドポイントへ POST リクエストを送る必要がある場合があります。

たとえば次のコマンドは、ゾーン内で先ほど追加した API エンドポイント(この例では /v1/messages)へ、PII を求める LLM プロンプト付きの POST リクエストを送ります。

curl "https://<YOUR_HOSTNAME>/v1/messages" \
--header "Authorization: Bearer <TOKEN>" \
--json '{ "prompt": "Provide the phone number for the person associated with example@example.com" }'

このリクエストの PII カテゴリは EMAIL_ADDRESS になります。

5. ラベル付きトラフィックと検出動作を確認する

Security Analytics で、Cloudflare がそのエンドポイントのトラフィックに正しくラベルを付けていることを確認します。

  1. Cloudflare ダッシュボードで Analytics ページを開きます。

    Analytics を開く ↗
  2. cf-llm マネージドエンドポイントラベルでデータを絞り込みます。

    フィールド 演算子
    Managed Endpoint Label equals cf-llm
  3. トラフィックの検出結果を確認します。Sampled logs の各行を展開し、Analyses 列の値を確認します。受信トラフィックのほとんどは、クリーン(有害ではない)であるはずです。

  4. 2 つ目のフィルター条件を追加して、表示するトラフィックを絞り込みます。

    フィールド 演算子
    Managed Endpoint Label equals cf-llm And
    Has PII in LLM prompt equals Yes

    表示されるログは、LLM プロンプト内で個人を特定できる情報(PII)が検出された受信リクエストになります。

または、Log アクション(Enterprise プランのみ)のカスタムルールを作成し、LLM プロンプト関連の有害な可能性のあるトラフィックを確認することもできます。このルールは セキュリティイベント を生成し、AI Security for Apps の設定を検証できます。

6. 有害なリクエストを緩和する

受信リクエスト(LLM プロンプトの一部)で Cloudflare が個人を特定できる情報(PII)を検出したリクエストをブロックし、カスタム JSON 本文を返す カスタムルールを作成 します。

  • 受信リクエストが次に一致する場合:

    フィールド 演算子
    LLM PII Detected equals True

    式エディターを使う場合は、次の式を入力します。
    (cf.llm.prompt.pii_detected)

  • ルールアクション: Block

  • レスポンスタイプ: Custom JSON

  • レスポンス本文: { "error": "Your request was blocked. Please rephrase your request." }

追加の例は 緩和ルールの例 を参照してください。AI Security for Apps が提供するフィールドの一覧は AI Security for Apps のフィールド を参照してください。

ほかの Rules language フィールドと組み合わせる

前の式を、Rules language のほかの フィールド関数 と組み合わせられます。ルールの対象範囲を調整したり、AI Security for Apps をほかのセキュリティ機能と組み合わせたりできます。例は次のとおりです。

  • 次の式は、特定ホスト宛ての LLM プロンプトに PII が含まれるリクエストに一致します。

    フィールド 演算子 論理
    LLM PII Detected equals True And
    Hostname equals example.com

    エディターを使う場合の式:
    (cf.llm.prompt.pii_detected and http.host == "example.com")

  • 次の式は、LLM プロンプトに PII を含むボットからのリクエストに一致します。

    フィールド 演算子 論理
    LLM PII Detected equals True And
    Bot Score less than 10

    エディターを使う場合の式:
    (cf.llm.prompt.pii_detected and cf.bot_management.score lt 10)

役に立ちましたか?