INTEGRITY Dokumentace

Detekce PII

AI Security for Apps (dříve Firewall for AI) dokáže detekovat osobní údaje (PII) v příchozích LLM promptech. Existují dva přístupy k detekci PII a můžete je použít společně pro vrstvenou ochranu:

Detekce PII založená na AI

Když je AI Security for Apps povoleno a požadavek dorazí na cf-llm označený endpoint, zkontroluje prompt na přítomnost PII a naplní dvě pole:

Detekci pohání AI model pro rozpoznávání pojmenovaných entit (NER). Viz cf.llm.prompt.pii_categories reference polí s úplným seznamem rozpoznávaných kategorií.

Podporované kategorie PII

Kategorie Popis
BANK_ACCOUNT Číslo bankovního účtu
CREDIT_CARD Číslo platební karty
DATE_TIME Výraz s datem nebo časem
DRIVER_LICENSE Číslo řidičského průkazu
EMAIL_ADDRESS E-mailová adresa
IP_ADDRESS IPv4 adresa
LOCATION Fyzická poloha nebo adresa
PASSPORT Číslo pasu
PERSON Celé nebo částečné jméno osoby
PHONE_NUMBER Telefonní číslo
TAX_ID Daňové identifikační číslo
US_SSN Americké číslo sociálního pojištění (SSN)
URL URL

Buďte konkrétní, abyste omezili falešně pozitivní výsledky

The cf.llm.prompt.pii_detected vrací true při detekci jakékoli kategorie PII — včetně širokých kategorií jako PERSON, DATE_TIME a LOCATION které se běžně objevují v normální konverzaci. Blokování pouze na základě tohoto pole povede u většiny aplikací k vysoké míře falešně pozitivních detekcí.

Místo toho stavte pravidla na cf.llm.prompt.pii_categories a uveďte pouze kategorie důležité pro váš případ užití. Například chatbot zákaznické podpory může potřebovat blokovat čísla platebních karet a SSN, ale jména osob a data může bezpečně ignorovat. Začněte s nejužší sadou kategorií, sledujte shody v Security Analytics a rozšiřujte jen podle potřeby.

Příklady pravidel — detekce založená na AI

Blokování všech požadavků obsahujících PII

Blokování pouze vybraných kategorií PII

Logování e-mailových adres, ale blokování platebních karet a SSN

Vytvořte dvě vlastní pravidla:

  1. Pravidlo s akcí Block a následující výraz:
    (any(cf.llm.prompt.pii_categories[*] in {"CREDIT_CARD" "US_SSN"}))

  2. Pravidlo s akcí Log a následující výraz:
    (any(cf.llm.prompt.pii_categories[*] in {"EMAIL_ADDRESS"}))

Přesná detekce PII (regex)

Pokud potřebujete detekovat vlastní formáty PII specifické pro vaši organizaci — například interní ID zaměstnanců, čísla záznamů pacientů nebo proprietární identifikátory účtů — můžete vytvořit WAF vlastní pravidlo pomocí regex shody na raw těle (http.request.body.raw pole).

Tento přístup doplňuje detekci založenou na AI porovnáváním předdefinovaných vzorů, včetně identifikátorů specifických pro organizaci.

Příklad: Detekce zaměstnaneckých ID

V následujícím příkladu organizace používá ID zaměstnanců ve formátu EMP- následované přesně šesti číslicemi (například EMP-482910).

Vytvoření vlastního pravidla s následující konfigurací:

Omezení na konkrétní endpoint

Chcete-li toto pravidlo omezit jen na svůj LLM endpoint, zkombinujte jej s podmínkou na cestu:

Pole Operátor Hodnota Logika
URI Path rovná se /api/chat And
Raw tělo požadavku matches regex EMP-[0-9]{6}

Výraz při použití editoru:
(http.request.uri.path eq "/api/chat" and http.request.body.raw matches "EMP-[0-9]{6}")

Další příklady regulárních výrazů

Vlastní typ PII Příklad formátu Regex vzor
ID zaměstnance EMP-482910 EMP-[0-9]{6}
Číslo zdravotního záznamu pacienta PAT/2024/00391 PAT/[0-9]{4}/[0-9]{5}
Interní ID účtu ACCT-XX-99999 ACCT-[A-Z]{2}-[0-9]{5}
Vlastní prefix API klíče sk_live_abc123... sk_live_[a-zA-Z0-9]{20,}

Poznámky k pravidlům s regulárními výrazy

Kombinace obou přístupů

Detekci založenou na AI a přesnou detekci můžete používat společně pro vrstvenou ochranu:

(cf.llm.prompt.pii_detected or http.request.body.raw matches "EMP-[0-9]{6}")

Toto pravidlo blokuje požadavky, kde buď AI model detekuje jakoukoli vestavěnou kategorii PII, nebo regex odpovídá vašemu vlastnímu formátu identifikátoru.