| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
|
|
| version: v1 |
| date: 2026-07-21 |
| basis: |
| policy: playbooks/privacy_filter/privacy-filter-policy.md |
| audit: docs/handoff/2026-07-03-ai4privacy-1p5m-ko-audit.md |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| model_labels: |
| - name: PERSON |
| description: ์ฑ๋ช
(์ฑ+์ด๋ฆ ๋ณํฉ ๋จ์ผ ์คํฌ) |
| policy_ref: "ํ2 ์ฑ๋ช
(๊น*์ฉ - ์ฒซยท๋ ๊ธ์ ์ ์ธ) / ํ2 ์ฑ๋ช
(์๋ฌธ) (์ 4์๋ฆฌ ๋
ธ์ถ) - ์นํ ์ ์คํฌ๋ฆฝํธ(ํ๊ธ/์๋ฌธ)๋ก ๊ท์น ๋ถ๊ธฐ, full-span ๊ฒฝ๊ณ ํ์" |
| data_source: [ko, en] |
| head_init_base: private_person |
| - name: RRN |
| description: ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ |
| policy_ref: "ํ1 ์ฃผ๋ฏผ๋ฒํธ / ํ2 ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ (๋ค 7์๋ฆฌ ๋ง์คํน)" |
| data_source: [ko, domain] |
| head_init_base: account_number |
| - name: FRN |
| description: ์ธ๊ตญ์ธ๋ฑ๋ก๋ฒํธ (์ ์ค - 1.5m ์์ค 0๊ฑด) |
| policy_ref: "ํ1 ์ธ๊ตญ์ธ๋ฑ๋ก๋ฒํธ ([5-8] ์์) / ํ2 ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ(์ธ๊ตญ์ธ๋ฑ๋ก๋ฒํธ ํฌํจ) (๋ค 7์๋ฆฌ)" |
| data_source: [domain] |
| head_init_from: RRN |
| - name: CARD_NUMBER |
| description: ์ ์ฉ/์ฒดํฌ์นด๋ ๋ฒํธ |
| policy_ref: "ํ1 ์นด๋๋ฒํธ / ํ2 ์นด๋๋ฒํธ (7~12๋ฒ์งธ ์๋ฆฌ, PCI-DSS)" |
| data_source: [ko, en, domain] |
| head_init_base: account_number |
| - name: ACCOUNT_NUMBER |
| description: ๊ณ์ข๋ฒํธ (v0 ๋๋กญ ์ฒ ํ - ํ2 ๋ง์คํน ๊ธฐ์ค ์กด์ฌ) |
| policy_ref: "ํ1 ๊ณ์ข๋ฒํธ (์ ํ๋ฒํธ ํก์ ์ํ - recognizer ์ฐ์ ์์ ํ์) / ํ2 ๊ณ์ข๋ฒํธ (๋ค 5์๋ฆฌ)" |
| data_source: [domain] |
| head_init_base: account_number |
| - name: SECRET |
| description: ์ธ์ฆ ์ํฌ๋ฆฟ (๋น๋ฐ๋ฒํธยทAPI ํคยทํ ํฐ ํตํฉ - ์นด๋/ํ์/ISP ๊ตฌ๋ถ์ ๋ฌธ๋งฅ ๋ถ๊ฐ + ์ก์
๋์ผ) |
| policy_ref: "ํ2 ์นด๋๋น๋ฐ๋ฒํธยท์จ๋ผ์ธ ํ์ ํจ์ค์๋ยทISP๋น๋ฐ๋ฒํธ (์ฒ๋ฆฌ ๊ธ์ง -> ๊ฒ์ดํธ์จ์ด์์๋ LLM ๋
ธ์ถ ๊ธ์ง = ์ ์ฒด ๋ง์คํน์ผ๋ก ํด์)" |
| data_source: [domain] |
| head_init_base: secret |
| - name: USER_ID |
| description: ์จ๋ผ์ธ ํ์ ID (v0 ๋๋กญ ์ฒ ํ - ํ2 ๋ง์คํน ๊ธฐ์ค ์กด์ฌ) |
| policy_ref: "ํ2 ์จ๋ผ์ธ ํ์ ID (์ 2์๋ฆฌ ์ ์ธ)" |
| data_source: [domain] |
| head_init_base: account_number |
| - name: EMAIL |
| description: ์ด๋ฉ์ผ ์ฃผ์ |
| policy_ref: "ํ1 ์ด๋ฉ์ผ / ํ2 ์ด๋ฉ์ผ์ฃผ์ (ID ์ 2์๋ฆฌ ์ ์ธ ๋ง์คํน)" |
| data_source: [ko, en] |
| head_init_base: private_email |
| - name: PHONE |
| description: ์ ํ๋ฒํธ (ํด๋ํฐ/์ผ๋ฐ์ ํ ํตํฉ - ์นํ ๋จ๊ณ์์ ํ๋ฆฌํฝ์ค๋ก ์ฌ๋ถ๋ฅ) |
| policy_ref: "ํ1 ํด๋ํฐ๋ฒํธยท์ ํ๋ฒํธ / ํ2 ๊ธฐ๋ณธ ๋ค 6์๋ฆฌ ๊ณตํต - ๋ด๋ถ๋ง ์ฑ๋ ํ์ ํด๋ํฐ |
| ๋ค 4์๋ฆฌ ์ํ (์นํ ์ ๊ฐ ํ๋ฆฌํฝ์ค๋ก ํด๋ํฐ ํ๋ณ + ์ฑ๋ ์ถ ๋ถ๊ธฐ)" |
| data_source: [ko, en] |
| head_init_base: private_phone |
| - name: PASSPORT |
| description: ์ฌ๊ถ๋ฒํธ (๋ถ๋ฆฌ ์ ์ง - ๋ง์คํน ๊ธฐ์ค ์์ด + ko 3,211๊ฑด) |
| policy_ref: "ํ1 ์ฌ๊ถ๋ฒํธ / ํ2 ์ฌ๊ถ๋ฒํธ (๋ค 4์๋ฆฌ)" |
| data_source: [ko, en] |
| head_init_base: account_number |
| - name: DRIVER_LICENSE |
| description: ์ด์ ๋ฉดํ๋ฒํธ (๋ถ๋ฆฌ ์ ์ง - ๋ง์คํน ๊ธฐ์ค ์์ด + ko 4,092๊ฑด) |
| policy_ref: "ํ1 ์ด์ ๋ฉดํ๋ฒํธ / ํ2 ์ด์ ๋ฉดํ๋ฒํธ (์ค๊ฐ 6์๋ฆฌ)" |
| data_source: [ko, en] |
| head_init_base: account_number |
| - name: GENERIC_ID |
| description: ๋ฒ์ฉ ์๋ณ์ (ํ๊ตญ ๋์๋ฌผ ์๋ ID๋ฅ - recall-first๋ก O ๋์ ์ ์ง) |
| policy_ref: "audit ยง5 (SOCIALNUM 10์๋ฆฌยทIDCARDNUM ์์ซ์)" |
| data_source: [ko, en] |
| head_init_base: account_number |
| - name: ADDRESS |
| description: ์ฃผ์ (์ยท๋๋ก๋ช
ยท๊ฑด๋ฌผ๋ฒํธ ํตํฉ ์คํฌ - ์นํ ๋จ๊ณ์์ ์ซ์ ์๋ธ๋ง์คํน) |
| policy_ref: "ํ2 ์ฃผ์ (์ง๋ฒ: ์/๋ฉด/๋ ๋ฏธ๋ง ์ซ์ / ๋๋ก๋ช
: ๊ฑด๋ฌผ๋ฒํธยท์์ธ์ฃผ์ ์ซ์ ๋ง์คํน -> ์คํฌ ๋ด ๊ท์น ์นํ)" |
| data_source: [ko, en] |
| head_init_base: private_address |
| - name: ZIPCODE |
| description: ์ฐํธ๋ฒํธ (๋ถ๋ฆฌ ์ ์ง - keep ํ ๊ธ ์ธ๋ถ์ฑ ์ ์ ) |
| policy_ref: "handoff [10] ZIPCODE keep ์ค์ฆ" |
| data_source: [ko, en] |
| head_init_base: private_address |
| - name: DATE |
| description: ๋ ์งยท์๊ฐ (์๋
์์ผ ๋ฏธ๋ถ๋ฆฌ - ko ๋ฐ์ดํฐ DOB 0๊ฑด + ๊ณผ์ ๋ง์คํน ์ค์ ์ธ์ ์กฐํญ) |
| policy_ref: "ํ2 ์๋
์์ผ (๋
ธ์ถ ๊ธ์ง - DATE ์ ์ฒด ๋ง์คํน์ผ๋ก ์ด๊ณผ ์ค์)" |
| data_source: [ko, en] |
| head_init_base: private_date |
| - name: CARD_EXPIRY |
| description: ์นด๋์ ํจ๊ธฐํ (ํ2 ๋ฌธ๋งฅ ํญ๋ชฉ ์น๊ฒฉ 2026-07-21 - ํค์๋ regex ์ด์ค ๋ ์ธ ๋ณํ) |
| policy_ref: "ํ2 ์นด๋์ ํจ๊ธฐํ (**/** ์ ์ฒด ๋ง์คํน)" |
| data_source: [domain] |
| head_init_base: private_date |
| - name: CVC |
| description: ์นด๋๊ฒ์ฆ์ฝ๋ (CVC/CVV/CAV ํตํฉ - ํ2 ๋ฌธ๋งฅ ํญ๋ชฉ ์น๊ฒฉ 2026-07-21) |
| policy_ref: "ํ2 ์นด๋๊ฒ์ฆ์ฝ๋ (์ ์ฅยท์ถ๋ ฅ ๊ธ์ง -> ๊ฒ์ดํธ์จ์ด ์ ์ฒด ๋ง์คํน ํด์)" |
| data_source: [domain] |
| head_init_base: account_number |
| - name: IPIN |
| description: I-PIN ๋ฒํธ (ํ2 ๋ฌธ๋งฅ ํญ๋ชฉ ์น๊ฒฉ 2026-07-21 - ๊ฐ ๊ท๊ฒฉ pending) |
| policy_ref: "ํ2 I-PIN (๋ค 5์๋ฆฌ - ํ์ดํ ๋ฌด๊ด ์ซ์ ๊ธฐ์ค)" |
| data_source: [domain] |
| head_init_base: account_number |
|
|
| |
| |
| |
| |
| |
| source_mapping: |
| GIVENNAME: PERSON |
| SURNAME: PERSON |
| TITLE: O |
| TAXNUM: |
| label: RRN |
| condition: |
| locale: ko |
| value_pattern: '^\d{6}-[1-4]\d{6}$' |
| fallback: GENERIC_ID |
| SOCIALNUM: GENERIC_ID |
| IDCARDNUM: GENERIC_ID |
| DRIVERLICENSENUM: DRIVER_LICENSE |
| PASSPORTNUM: PASSPORT |
| TELEPHONENUM: PHONE |
| EMAIL: EMAIL |
| CREDITCARDNUMBER: CARD_NUMBER |
| ACCOUNTNUM: ACCOUNT_NUMBER |
| CITY: ADDRESS |
| STREET: ADDRESS |
| BUILDINGNUM: ADDRESS |
| ZIPCODE: ZIPCODE |
| DATE: DATE |
| TIME: DATE |
| AGE: O |
| GENDER: O |
| SEX: O |
| USERNAME: USER_ID |
| PASSWORD: SECRET |
| |
| ORGANISATION: O |
| URL: O |
| AMOUNT: O |
| COUNTRY: O |
| CURRENCY: O |
| BANKNAME: O |
| TIMEZONE: O |
| SALARY: O |
| IPV4: O |
| JOBTITLE: O |
| HOSPITALNAME: O |
| ALLERGIES: O |
| WEIGHT: O |
| HEIGHT: O |
|
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| merge_rules: |
| person: |
| source_labels: [GIVENNAME, SURNAME] |
| max_gap_chars: 4 |
| gap_allowed: whitespace_or_punct |
| output_label: PERSON |
| address: |
| source_labels: [CITY, STREET, BUILDINGNUM] |
| max_gap_chars: 4 |
| gap_allowed: whitespace_or_punct |
| output_label: ADDRESS |
|
|
| |
| |
| |
| |
| regex_only: |
| - key: CI |
| policy_ref: "ํ1 CI (86์+`==` ๊ณ ์ , lookaround ๊ฒฝ๊ณ - ๊ฒ์ ๋ณด๊ฐ 2026-07-21) / ํ2 CI (์ 7์๋ฆฌ ๋
ธ์ถ)" |
| |
| - key: IP_ADDRESS |
| policy_ref: "ํ1 IP์ฃผ์ (์ฅํ
0~255 ์๊ฒฉํ - ๊ฒ์ ๋ณด๊ฐ 2026-07-21) / ํ2 ๊ณ ๊ฐ์ IP์ฃผ์ (์ 3์๋ฆฌ = ์ฒซ ์ฅํ
๋ง์คํน ํด์, IPv4 ํ์ )" |
|
|
| |
| |
| |
| |
| |
| |
| |
| regex_assist: |
| - key: CARD_EXPIRY |
| patterns: |
| keyword: '(?i)(์ ํจ\s*๊ธฐ[๊ฐํ]|expir\w*|valid\s*thru)\D{0,12}(0[1-9]|1[0-2])\s*[/.\-]\s*((?:20)?\d\d)(?!\d)' |
| pan_adjacent: '(0[1-9]|1[0-2])\s*/\s*\d{2}(?!\d)' |
| - key: CVC |
| patterns: |
| keyword: '(?i)(\b(?:cv[vc]2?|security\s*code)\b|์นด๋\s*๊ฒ์ฆ\s*(?:๋ฒํธ|์ฝ๋|๊ฐ)?|๋ณด์\s*์ฝ๋)\W{0,6}(?!(?:19|20)\d\d(?!\d))(\d{3,4})(?!\d)' |
| |
| - key: IPIN |
| patterns: |
| keyword: '(?i)(์์ดํ|i[-\s]?pin)\s*(?:๋ฒํธ|no\.?)?\D{0,8}(\d{6}[-\s]?\d{7})(?!\d)' |
| |
|
|
| |
| |
| |
| out_of_scope: |
| - key: VIDEO_PERSONAL_INFO |
| policy_ref: "ํ2 ๊ฐ์ธ์์์ ๋ณด (๊ฒ์ ๋ชฉ์ ์ธ ์ฒ๋ฆฌ ๊ธ์ง)" |
| reason: "ํ
์คํธ ์ํฐํฐ๊ฐ ์๋ ๋ชจ๋ฌ๋ฆฌํฐ(์ด๋ฏธ์งยท์์) - ๋ฉํฐ๋ชจ๋ฌ ์
๋ ฅ ๊ฒฝ๋ก๊ฐ ์ด๋ฆฌ๋ฉด |
| ํ
์คํธ ํํฐ๋ฅผ ์ฐํํ๋ฏ๋ก ๋ณ๋ ํต์ (์
๋ ฅ ์ฐจ๋จ or ๋น์ ํํฐ) ํ์" |
|
|
| |
| |
| |
| pending_confirmation: |
| - "๋๋กญ ๋ฆฌ์คํธ(O ๋งคํ) ์ ์ฒด = ๋นPII ์ ์ธ - ํนํ ORGANISATIONยทAMOUNTยทSALARY" |
| - "IPIN ๊ฐ ๊ท๊ฒฉ (13์๋ฆฌ ๊ฐ์ ) - ์ ๊ณต๊ธฐ๊ด ๊ณ์ฝ ํ์ธ (CVC ๊ฒ์ถ ๊ท์น์ 2026-07-21 ํค์๋ ๋๋ฐ ํจํด ์ฑํ์ผ๋ก ํด์)" |
| - "SECRET ์ ์ค ์ฑํ (2026-07-13) - ํ2 ์ฒ๋ฆฌ๊ธ์ง๋ฅ์ '๊ฒ์ดํธ์จ์ด ์ ์ฒด ๋ง์คํน' ํด์์ |
| ์ ์ฑ
ํ ์ฌํ ์ปจํ ๋์" |
|
|