# KBX v15 Authorization & Sensitive Data Governance

## 경계
- Frontend 권한은 메뉴/Command/Workflow의 UX 표현을 결정한다.
- Backend는 모든 업무 Command/Query의 최종 권한을 검증한다.
- Role은 KBX가 고정하지 않는다. 배포 조직이 Role → Permission을 매핑한다.
- 민감정보는 기본 마스킹한다. 전체보기와 비마스킹 Export는 별도 Permission으로 분리한다.
- 전체보기는 서버에서 권한을 다시 확인하고 disclosure audit을 남긴다.
- AI의 실제 실행권한은 `현재 사용자 권한 ∩ AI 허용 Action`이며 Domain Validation을 대체하지 않는다.

## 주문 수취인 정책
`receiverName`, `phone`, `postalCode`, `address1`, `address2`는 기본 masked이다.
- 조회: `oms.order.read`
- 전체보기: `oms.order.recipient.unmask`
- 비마스킹 Export: `oms.order.recipient.export`
- AI: masked-only
- Telemetry: 원문 금지

`KbxMaskedValue`의 전체보기 버튼은 권한의 최종 방어선이 아니다. 원문 데이터는 서버가 권한을 확인한 뒤 반환해야 한다.
