데이터 거버넌스 정책
문서 역할
역할: 규범
문서 종류: policy
충돌 시 우선 문서: 이 문서
기준 성격: as-is
목적
개인정보/민감정보의 수집-저장-조회-삭제 전 과정을 표준화해 보안/운영 리스크를 줄인다.
적용 범위
coupler-api, coupler-admin-web, coupler-mobile-app
회원 데이터, 결제 데이터, 알림 데이터, 운영 로그 데이터
단일 SoT
필수 규칙
1) 데이터 분류
데이터는 최소 일반, 내부, 민감 3단계로 분류한다.
비밀번호, 결제 식별자 원문, 인증 토큰은 민감으로 분류한다.
분류 없는 신규 저장 필드는 운영 배포를 금지한다.
전체 물리 schema baseline/lock과 migration SQL은 내부로 분류하고 private 서비스 저장소에서만 관리한다.
DB 접속 정보, 계정, 권한, host/topology, 운영 row 또는 민감 데이터가 포함된 dump는 민감으로 분류한다.
공개 docs에는 논리 엔티티·관계·소유권·분류·불변 조건·보관/삭제 생명주기만 기록한다. 서비스 업무
스키마의 전체 테이블·컬럼 설명, 실행 가능한 DDL, 운영 row 샘플은 공개하지 않는다.
공개 논리 엔티티의 분류는 논리 데이터 모델 정책 의 소유 문서 표에서
엔티티가 포함하는 데이터 중 가장 높은 등급으로 기록한다.
물리 식별자 이름 자체를 접근 통제 수단으로 간주하지 않는다. 비공개 schema 관리와 별개로 인증, 권한,
네트워크 통제, 암호화, 감사 로그를 적용한다.
2) 최소 수집/최소 보관
기능 수행에 필요한 최소 데이터만 수집한다.
보관 기한이 끝난 데이터는 지연 없이 삭제 또는 익명화한다.
테스트/분석 목적으로 운영 원문 민감정보 복제를 금지한다.
schema 구조 검증은 private schema-only baseline을 기본으로 하며 운영 원문 dump를 사용하지 않는다.
단, backfill·cutover·contract의 데이터 보존 검증 때문에 운영 원문 dump 반입이 불가피할 때만 본 문서의
운영 원문 dump 로컬 반입 예외를 따른다.
로컬·개발계 화면 검증용 데이터는 운영 원문을 변형하지 않은 합성 데이터만 사용하며, 생성·식별·초기화 기준은 테스트용 개발 데이터 정책 을 따른다.
개발 데이터의 suite·catalog·reference time은 합성 DB actor의 embedded manifest 하나만 소유한다. owner와 유지
종료일은 DB·filesystem에 별도 registry/history로 저장하지 않고 접근 통제된 QA 작업 기록에서 관리한다.
알림 발송 이력은 활성 회원의 알림함 제공 기간 동안 보관한다. 탈퇴(LEAVE)·차단(BLOCK) 회원은
status_date 기준 30일 경과와 auto_delete=NORMAL 조건의 개인정보 자동 정리에서 수신자 연결과 표시 문구를
함께 삭제하며, 알림 이력을 별도 예외로 더 오래 보관하지 않는다.
알림 표시 문구에 대화 원문을 포함할 수 있는 타입은 기존 2:2 채팅 MEET_SEND_CHAT(37)과 N:N 그룹미팅
GROUP_MEETING_CHAT_MESSAGE(82)뿐이다. 두 타입의 원문 미리보기에도 위와 같은 알림 이력 보관·삭제 기준을
적용하고, 그 밖의 타입은 대화 원문을 알림 이력에 저장하지 않는다.
3) 접근 통제
민감 데이터 조회/수정은 역할 기반 권한(RBAC)으로 제한한다.
운영자 조회는 목적/사유/수행자를 감사 로그로 남긴다.
공유 계정 사용과 권한 공유를 금지한다.
4) 전송/저장 보호
민감정보는 전송 구간 암호화(HTTPS/TLS)를 기본으로 한다.
저장 시 평문 보관이 필요한 경우를 제외하고 암호화/해시를 적용한다.
백업 데이터도 원본과 동일한 접근 통제를 적용한다.
5) 로그/마스킹
로그에는 비밀번호, 카드번호, 토큰, 주민식별정보를 남기지 않는다.
식별자 노출이 필요한 경우 마스킹 규칙을 적용한다.
로그 샘플 공유 시 민감 필드를 사전 제거한다.
6) 삭제/정정/사고 대응
삭제 요청 처리 시 원천 테이블, 파생 저장소, 캐시를 함께 정리한다.
정정 요청은 변경 전/후 이력과 처리자를 기록한다.
유출/오남용 사고는 탐지 즉시 차단, 영향 범위 분석, 복구 및 재발 방지 조치를 수행한다.
7) 회원/프로필 자동 정리 기준
탈퇴(LEAVE) 또는 차단(BLOCK) 회원의 개인정보 자동 정리는 t_member.status_date 기준 30일 경과와 auto_delete=NORMAL을 조건으로 한다.
자동 정리는 개인정보와 파생 개인정보 저장소를 대상으로 하며, 매칭/서비스 이용 기록처럼 운영 정산과 감사에 필요한 비개인 기록은 별도 보관 목적과 접근 통제를 유지한다.
프로필 버전 자동 정리는 review_finalized_at 기준 90일 이상 지난 이전 버전을 대상으로 하며, 현재 t_member.profile_version_id가 가리키는 활성 버전은 삭제하지 않는다.
자동 정리 작업의 작업 목록과 실행 주기는 Cron 작업 에서 설명하되, 보관 기한과 삭제 예외 판단은 이 문서를 우선한다.
운영 절차
설계: 신규 데이터 필드의 분류/보관 기간/접근 권한을 정의한다.
구현: 저장/조회/로그 경계에 마스킹과 접근 통제를 반영한다.
검증: 권한 없는 접근 차단, 로그 민감정보 노출 여부를 점검한다.
배포: DB/운영 변경 근거와 롤백 절차를 릴리스 문서에 남긴다.
사후: 주기적으로 보관 만료 데이터 정리 결과를 점검한다.
운영 원문 dump 로컬 반입 예외
적용 목적: schema-only baseline과 합성 fixture만으로 backfill·cutover·contract의 데이터 보존을 검증할 수
없는 경우에 한해 운영 원문 dump의 로컬 반입을 허용한다.
허용 범위: 최신 운영 원문 dump를 로컬 MySQL에 일시 복원하는 행위만 허용한다. 테스트 데이터 생성, 분석용 추출, 개인 보관 용도는 금지한다.
baseline 원칙: 물리 스키마 SoT와 일반 DDL replay는 private schema-only baseline을 사용한다. 운영 원문
dump는 데이터 보존 검증용 일시 fixture이며 baseline/lock 산출물로 커밋하지 않는다.
최소화 원칙: 전체 dump보다 익명화·부분 추출·합성 fixture로 같은 검증이 가능하면 원문 반입을 금지한다.
접근 통제: 반입 주체는 작업 수행자 본인으로 한정하고, 공유 계정/공유 저장소/공용 장비 반입을 금지한다.
저장 통제: dump 파일과 복원 DB는 로컬 암호화 저장소에만 둔다. 클라우드 동기화 폴더, 외부 공유 드라이브, 메신저/이메일 전송을 금지한다.
2차 확산 금지: 검증 중 생성된 추가 export, 스크린샷, 로그, 샘플 CSV에 운영 원문 민감정보를 남기지 않는다.
로그 통제: migration 검증 로그에는 민감정보 원문 대신 Gate 결과, count, hash, diff 요약만 남긴다.
보관 기한: 검증 종료 즉시 dump 파일, 복원 DB, 임시 SQL, 임시 로그를 삭제한다. 작업 지연이 있더라도 24시간을 넘겨 보관하지 않는다.
삭제 확인: PR 또는 작업 기록에 반입 목적, 사용 기간, 삭제 완료 시각을 남긴다.
사고 대응: 분실/오남용/오반입이 발생하면 즉시 반입 파일 격리, 추가 복제 차단, 영향 범위 기록, 삭제 및 재발 방지 조치를 수행한다.
증빙/추적
PR 본문에 아래를 필수로 남긴다.
데이터 분류 결과(신규/변경 필드)
접근 권한 변경 내역
로그 마스킹 검증 결과
삭제/정정/복구 절차 영향 범위
운영 원문 dump를 로컬에 반입한 경우 아래를 추가로 남긴다.
반입 목적, 검증에 사용한 마이그레이션 소스 커밋과 대상 filename/checksum
반입 시각, 삭제 완료 시각
저장 위치와 접근 통제 방식
DB 구조 변경의 실행 기록은 DB Migration 유지보수 정책 과
릴리스 프로세스 를 따른다. 이 문서는 별도 환경별 plan/execution artifact를 추가로
요구하지 않는다.
체크리스트
[ ] 신규/변경 데이터 필드의 분류와 보관 기간이 정의됐는가?
[ ] 민감 데이터 조회/수정 경로에 역할 기반 접근 통제가 적용됐는가?
[ ] 로그/모니터링 출력에서 민감정보가 마스킹 또는 제거됐는가?
[ ] 삭제/정정 요청 처리 시 파생 저장소/캐시까지 반영되는가?
[ ] PR/릴리스 기록에 데이터 거버넌스 증빙이 포함됐는가?
[ ] 운영 원문 dump를 로컬에 반입했다면 예외 조건, 삭제 시각, 접근 통제 기록이 남았는가?
관련 문서