목록으로
KRDS 체크리스트 분석

하나라도 안 했으면 전체 동의는 꺼짐

이번 599편은 개별 항목 중 하나라도 ’동의 안 함’이면 일괄 선택 체크박스는 선택 해제 상태를 유지하라는 규칙입니다.

VViewCheck Insight
·2026.07.22 4분 23
하나라도 안 했으면 전체 동의는 꺼짐
KRDS BP-033 — 개별 선택 항목 중 단 하나라도 ‘동의 안 함’ 옵션이 선택되어 있다면 일괄 선택 체크박스는 선택 해제 상태가 유지되게 하고 있다.

0. 들어가며 — ’전체 동의’가 거짓이면

이번 599편은 개별 항목 중 하나라도 ’동의 안 함’이면 일괄 선택 체크박스는 선택 해제 상태를 유지하라는 규칙입니다.

‘전체 동의’ 체크박스는 — 모든 항목이 동의됐을 때만 체크돼야 정확하죠. 하나라도 동의 안 했는데 전체 동의가 체크돼 있으면 — 거짓 상태입니다. BP-033은 일괄 선택의 정합성을 규정합니다. 체크박스 중간 상태(CP-292)의 동의 적용이죠. 이번 편을 풀어냅니다.

1. 원문 — 하나라도 비동의면 일괄 선택 해제 유지

BP-033 (기본 패턴 > 동의) “개별 선택 항목 중 단 하나라도 ‘동의 안 함’ 옵션이 선택되어 있다면 일괄 선택 체크박스는 선택 해제 상태가 유지되게 하고 있다.”

개별 동의 항목 중 하나라도 동의하지 않았으면, ‘전체 동의’(일괄 선택) 체크박스가 선택되지 않은 상태로 유지되게 하라는 뜻입니다.

정리: 하나라도 동의 안 했으면 전체 동의 체크박스는 꺼져 있어야 한다. 이게 BP-033입니다.

2. 왜 일괄 선택 정합성인가

동의 화면에는 — 보통 ‘전체 동의’(일괄 선택) 체크박스가 있습니다. 한 번에 모든 항목을 동의하게 하는 편의 기능이죠. 그런데 — 이 일괄 선택 체크박스의 상태가, 개별 항목들의 실제 동의 상태와 정확히 일치해야 합니다. BP-033은 이 정합성을 요구합니다.

일괄 선택과 개별 항목의 관계:

전체 동의 체크 — 모든 개별 항목이 — 동의됐을 때만, ’전체 동의’가 체크됩니다.

하나라도 비동의 — 개별 항목 중 — 하나라도 ’동의 안 함’이면, ’전체 동의’는 체크 안 된 상태여야 하죠. ’전체’가 아니니까요.

정합성이 안 맞을 때의 문제:

거짓 전체 동의 사용자가 ‘전체 동의’를 눌러 다 체크한 뒤, 개별 항목 하나(예: 선택 마케팅)를 동의 해제 했다고 합시다. 이때 ’전체 동의’ 체크박스가 여전히 체크된 채로 있으면, 거짓이죠. 실제론 일부만 동의인데 ‘전체 동의’가 체크돼 있으면, 사용자는 ’내가 전체 동의한 줄’ 오해하거나, 시스템이 동의 안 한 항목까지 동의로 처리할 위험이 있습니다.

동의 정확성 훼손 동의는 정확해야 법적으로 유효합니다. 일괄 선택 상태가 실제와 안 맞으면 동의 데이터가 부정확해지죠.

그래서 BP-033은 — 개별 항목 중 하나라도 비동의면 일괄 선택을 해제 유지하라고 합니다:

자동 해제 사용자가 개별 항목 하나를 동의 해제하면, ‘전체 동의’ 체크박스가 자동으로 해제됩니다. ’전체’가 더는 참이 아니니까요. 시스템이 개별 항목 상태를 보고 일괄 선택을 동적으로 갱신하죠.

중간 상태 표현 일부만 동의된 상태를 ’전체 동의’에 중간 상태(indeterminate) 로 표현하면 더 명확 합니다(체크박스 중간 상태 CP-292). ’전체 동의’가 체크(전부)/중간(일부)/해제(없음) 세 상태로, 일부 동의 시 중간 상태(−)를 보여주죠. 다만 BP-033의 핵심은 ’전부 동의가 아니면 체크 상태가 아니어야 한다’입니다.

양방향 연동 — ’전체 동의’를 체크하면 개별 다 체크, 개별을 해제하면 전체 해제 — 양방향으로 정확히 연동되게요.

왜 정확성이 중요한가. 동의는 개인정보 처리의 법적 근거입니다. 일괄 선택과 실제 동의가 안 맞으면 동의하지 않은 항목을 동의로 처리하는 법 위반·신뢰 훼손이 되죠. 정확한 정합성이 동의의 신뢰성 기본입니다.

이 규칙은 동의 패턴의 ’일괄 선택 정합성’을 담당합니다 — 개별 항목과 일괄 선택 상태를 정확히 연동해(033), ’전체 동의’가 실제 동의 상태를 거짓 없이 반영하게 하죠. 체크박스 중간 상태(CP-292)를 동의 정확성에 적용한 것입니다.

정리하면 — 일괄 선택 체크박스가 실제 동의 상태와 안 맞으면 동의하지 않은 항목이 동의로 처리될 위험이 있으므로, 개별 항목 중 하나라도 비동의면 일괄 선택을 해제(또는 중간 상태) 유지해 정합성을 보장해야 합니다.

3. 점검 / 개선

무엇을 점검하나

비동의 시 해제 — 개별 하나라도 동의 해제 시 ’전체 동의’가 해제되는가.

양방향 연동 — 전체↔개별 동의 상태가 정확히 연동되는가.

중간 상태(선택) — 일부 동의를 중간 상태로 표현하는가(CP-292).

개선 방향

개별 항목 상태를 보고 ’전체 동의’를 동적 갱신(하나라도 비동의면 해제).

양방향 연동. 일부 동의는 중간 상태(indeterminate) 표현 고려.

4. 누가 담당하나 / 우리 사이트에 해당될까?

역할책임
퍼블리셔/개발일괄 선택 정합성·연동 구현
QA동의 상태 정합성 검증
기관 유형BP-033 적용
중앙행정기관(대표·운영) / 공공기관 / 지자체✅ 필수 (일괄 동의 사용 시)

전체 동의 기능이 있는 모든 사이트가 해당됩니다.

5. 30초 자가진단 + FAQ

✅ 30초 자가진단

□ 개별 하나라도 동의 해제 시 ’전체 동의’가 해제되나요?

□ 전체↔개별 동의 상태가 정확히 연동되나요?

□ 일부 동의를 중간 상태로 표현하나요(CP-292)?

❓ FAQ

Q1. 전체 동의를 누른 뒤 개별을 해제하면요? ’전체 동의’가 자동 해제돼야 합니다. 더는 ’전체’가 아니니까요. 체크된 채 두면 거짓이죠. Q2. 일부만 동의된 상태는 어떻게 표현하나요? ’전체 동의’에 중간 상태(indeterminate, 가로 줄)로 ’일부 동의’를 표현하면 명확합니다(CP-292). Q3. 왜 정확해야 하나요? 일괄 선택과 실제 동의가 안 맞으면 동의 안 한 항목을 동의로 처리하는 법 위반·신뢰 훼손이 됩니다.

6. 마무리

BP-033의 메시지:

하나라도 안 했으면 전체 동의는 꺼짐 — 개별 비동의 시 일괄 선택을 해제 유지하라.

일괄 선택이 실제 동의와 안 맞으면 동의 안 한 항목이 동의로 처리될 위험이 있습니다. 하나라도 비동의면 전체 동의를 해제(또는 중간 상태) 유지해 정합성을 보장하는 게 핵심이죠. 다음 편은 키보드 약관 확인입니다.

다음 편 예고 ▶ 「600. (BP-034) 키보드를 이용하여 약관 내용을 확인할 수 있도록 제공하고 있다.」

ViewCheck는 일괄 선택 체크박스의 동의 정합성을 진단합니다.

📚 참고 출처

KRDS 기본 패턴 — 동의 가이드 — https://www.krds.go.kr/html/site/pattern/pattern_03.html

KRDS #ViewCheck #공공웹사이트 #전자정부 #디지털정부 #웹접근성 #디자인시스템 #UIUX #UI컴포넌트 #웹표준

KRDS,ViewCheck,공공웹사이트,전자정부,디지털정부,웹접근성,디자인시스템,UIUX,UI컴포넌트,웹표준

#KRDS#공공웹#기본패턴#동의패턴#일괄선택#전체동의#체크박스정합성#동의안함

관련 글