개인정보보호위원회 점검·민원 한 건이면 처리방침 누락 항목별로 과태료가 부과된다. 가장 큰 항목인 제15조(수집·이용 동의 미고지)와 제17조(제3자 제공 동의 미고지)는 각각 최대 5,000만원이다. 합치면 1억이 한 번에 빠진다.
문제는 개발자·운영자가 자기 사이트의 처리방침이 표준 양식을 충족하는지 직접 확인하기 어렵다는 점이다. AI한테 "처리방침 만들어줘" 하면 그럴듯한 글이 나오지만, 6대 필수 섹션 중 한두 개가 슬쩍 빠져 있다. 우리가 지난주 실제로 확인한 바이브코딩 사이트 7곳 중 5곳이 한 개 이상 누락이었다.
개보위 표준 양식이 요구하는 6대 섹션
개인정보처리방침에 반드시 들어가야 하는 항목은 6개다. 각 항목은 단순 키워드가 아닌 구체 정보가 명시되어 있어야 한다.
| 섹션 | 근거 | 최대 과태료 |
|---|---|---|
| 수집하는 개인정보 항목 | 제15조 | 5,000만원 |
| 개인정보 보유 및 이용기간 | 제21조 | 2,000만원 |
| 제3자 제공 | 제17조 | 5,000만원 |
| 처리위탁(수탁업체 명시) | 제26조 | 2,000만원 |
| 개인정보보호책임자(CPO) 지정 | 제31조 | 1,000만원 |
| 이용자 권리(열람·정정·삭제·처리정지) | 제35~37조 | 2,000만원 |
실무 기준에서 가장 많이 빠지는 두 항목은 처리위탁과 CPO 지정이다. AWS·SES·Stripe·PortOne 같은 외부 서비스를 쓰면서 위탁 업체 목록을 명시하지 않는 경우, 1인 운영이라며 CPO를 따로 지정하지 않는 경우가 흔하다. 둘 다 점검 시 즉시 적발되는 항목이다.
각 섹션이 충족돼야 하는 조건
1. 수집하는 개인정보 항목
"이름, 이메일, 전화번호, IP 주소, 쿠키" 같은 구체 항목이 모두 나열돼야 한다. "회원 가입 시 필요한 정보"처럼 모호한 표현은 미고지로 본다. 자동 수집 항목(접속 로그, 쿠키, 기기 정보)도 별도로 명시해야 한다.
2. 개인정보 보유 및 이용기간
"회원 탈퇴 시까지" 한 줄로 끝나면 안 된다. 회원 탈퇴 후 분쟁 대비 일정 기간(상거래 5년, 통신비밀 3년 등 법정 보존기간)이 있다면 그것도 명시해야 한다. 파기 절차와 방법도 함께 들어가야 한다.
3. 제3자 제공
제3자에게 개인정보를 제공한다면 (a) 받는 자 (b) 제공 목적 (c) 제공 항목 (d) 보유 기간을 모두 적어야 한다. 광고 네트워크, 마케팅 분석 도구, 결제 PG사가 흔한 사례다. 제공이 없다면 "제3자에게 제공하지 않습니다"라고 명시한다.
4. 처리위탁
운영을 외부에 맡긴 부분(AWS 호스팅, AWS SES 메일, PortOne 결제, Cloudflare CDN 등) 모두가 처리위탁이다. 수탁업체명, 위탁 업무 내용, 보유·이용기간을 표 형태로 명시한다. 1인 운영이라도 클라우드 호스팅을 쓰면 적용된다.
5. 개인정보보호책임자(CPO)
이름, 직책, 이메일, 전화번호 4가지가 명시돼야 한다. "대표 이메일로 문의"는 인정 안 된다. 1인 사업자라면 본인 정보를 쓰면 된다. 단, 회사 대표 메일이 아닌 개인 식별 가능한 연락처여야 한다.
6. 이용자 권리
열람·정정·삭제·처리정지 요청 방법이 명시돼야 한다. "[email protected]으로 요청" 한 줄로 끝나도 형식상 충족이지만, 처리 기한(요청 후 10일 이내)과 거부 시 사유 통지 의무까지 적는 것이 표준이다.
자동 점검 — 직접 확인하는 방법
처리방침 페이지를 열고 Ctrl+F로 6개 섹션 각각의 키워드를 검색하면 된다. 방침이 길면 놓치기 쉬우니 정규식 한 번에 6개를 동시에 매칭하는 게 안전하다.
// 브라우저 콘솔에서 실행
const text = document.body.innerText;
const sections = {
'수집 항목': /수집하는?\s*개인정보\s*(?:의\s*)?항목|수집\s*항목/,
'보유 기간': /보유\s*(?:및\s*)?이용\s*기간|보유\s*기간|보유기간/,
'제3자 제공': /제\s*3\s*자\s*(?:에\s*(?:대한)?|에게)?\s*제공/,
'처리위탁': /처리\s*위탁|위탁\s*업체|수탁업체/,
'CPO': /개인정보\s*보호\s*책임자|개인정보\s*책임자|CPO/,
'이용자 권리': /(?:열람|정정|삭제|처리\s*정지|이용자\s*권리|정보주체\s*권리)/,
};
Object.entries(sections).forEach(([k, re]) => {
console.log(k, re.test(text) ? 'OK' : 'MISSING');
});
매칭됐다고 끝나는 게 아니라 그 섹션 본문에 위에서 정리한 구체 정보가 들어 있는지 사람이 읽고 확인해야 한다. 정규식은 누락만 잡아준다.
CodeScan CRM 보안 진단으로 한 번에 점검
매번 사이트마다 콘솔 켜고 정규식 돌리는 게 귀찮다면 CodeScan CRM 보안 진단을 쓰면 된다. URL 한 줄 입력하면 처리방침 페이지를 자동으로 찾아 6대 필수 섹션 누락 여부를 점검한다. 누락된 섹션은 근거 조항과 과태료까지 함께 표시한다.
웹·모바일 사이트의 다른 보안 항목 21개도 함께 자동 진단된다. 무료다.
지금 무료로 점검하기 → codescan.kr/security/crm-scan/
참고
- 개인정보보호위원회 표준 처리방침 양식
- 개인정보보호법 제15·17·21·26·30·31·35~37조
- 정보통신망법 제50조 (수신거부)
본 글은 일반 가이드로, 법적 자문을 대체하지 않습니다. 구체 상황은 개인정보보호위원회 또는 변호사 상담을 권장합니다.