민감정보 컬럼 마스킹
주민등록번호·연락처·계좌번호처럼 노출되면 안 되는 컬럼을 지정해 두면, 마스킹 대상 역할로 접속한 팀원에게는 그 값이 서버에서 **** 로 가려진 채 내려갑니다. 실제 값은 클라이언트로 전달되지 않으므로, 브라우저를 뜯어봐도 원본을 복원할 수 없습니다.
어떻게 동작하나
컬럼 마스킹은 역할 기반으로 동작합니다. 프로젝트에서 특정 역할을 "마스킹 대상"으로 설정하면, 그 역할로 접속한 팀원이 지정된 민감 컬럼을 조회할 때 값이 **** 로 대체됩니다. 소유자(OWNER)와 전체 권한 역할은 항상 원본 값을 그대로 봅니다.
사용을 위해서는 다음 두 가지 설정이 모두 필요합니다.
- ① 마스킹 대상 역할 — 어떤 역할이 값을 가려서 볼 것인지 (프로젝트 설정에서 지정)
- ② 민감 컬럼 지정 — 어떤 컬럼을 가릴 것인지 (테이블/컬럼을 우클릭해 지정)
값은 서버에서 가려집니다. 마스킹 대상 역할에게는 원본 값이 아예 전달되지 않으므로, 값을 되돌려 볼 방법이 없습니다.
컬럼 마스킹은 온라인 팀 프로젝트 전용 기능입니다. 오프라인(개인) 모드에는 적용되지 않습니다.
1단계 · 마스킹 대상 역할 설정

프로젝트 설정의 역할 권한에서 각 역할마다 "민감정보 마스킹 처리" 항목을 켜면, 해당 역할이 마스킹 대상이 됩니다. 하나 이상의 역할에 마스킹이 켜져 있어야 컬럼 지정 기능이 활성화됩니다.
| 역할 | 마스킹 가능 여부 | 설명 |
|---|---|---|
| 소유자 (OWNER) | 불가 (항상 원본) | 프로젝트 소유자는 언제나 전체 값을 봅니다. 마스킹 대상에서 제외됩니다. |
| 전체 권한 역할 | 불가 (항상 원본) | 전체 권한이 부여된 역할은 마스킹되지 않습니다. |
| 매니저 · DBA · 멤버 | 가능 | 각 역할에 마스킹을 켜면 지정된 민감 컬럼이 **** 로 보입니다. |
역할 서열과 자동 승계
마스킹 설정에는 신뢰 서열이 적용됩니다. 서열은 매니저 > DBA > 멤버 순이며, 상위 역할을 마스킹하면 그보다 하위 역할은 자동으로 함께 마스킹됩니다. 하위 역할이 상위 역할보다 더 많이 볼 수는 없다는 원칙 때문입니다. (예: 매니저를 마스킹하면 DBA·멤버도 자동 마스킹됩니다.)
마스킹 설정을 저장하면 이미 열려 있는 ERD·테이블 편집기·결과 화면에도 즉시 반영됩니다. 프로젝트를 다시 열 필요가 없습니다.
2단계 · 민감 컬럼 지정

가릴 컬럼을 우클릭하면 나오는 컨텍스트 메뉴에서 "민감정보로 지정" / "지정 해제"를 선택합니다. 지정된 컬럼에는 자물쇠(방패) 아이콘이 표시됩니다. 지정은 서버에 즉시 저장되어 프로젝트의 모든 팀원에게 공유됩니다.
지정은 다음 위치에서 할 수 있습니다.
- ERD 테이블 노드 — 캔버스의 테이블에서 컬럼 우클릭
- 테이블 편집기 — 컬럼 목록에서 우클릭
- 객체 상세 (뷰) 컬럼 목록 — 뷰의 컬럼도 동일하게 지정 가능
지정 · 해제 권한 (비대칭)
| 동작 | 가능한 사람 | 이유 |
|---|---|---|
| 지정 (추가) | 소유자 또는 마스킹 대상이 아닌 역할 | 값을 가리는 방향이라 상대적으로 넓게 허용합니다. 마스킹 대상 역할은 지정할 수 없습니다. |
| 지정 해제 (제거) | 소유자만 | 해제하면 마스킹 대상에게 값이 노출됩니다. 노출을 되돌리는 결정은 소유자만 내릴 수 있습니다. |

문자 타입 컬럼만 지정할 수 있습니다. 테이블·ERD에서는 VARCHAR·TEXT 같은 문자 타입만 대상이 됩니다. DECIMAL·INT 같은 숫자, 날짜, 불리언 타입은 지정 대상이 아니어서 우클릭 메뉴에 "민감정보로 지정"이 나타나지 않습니다. 민감정보(주민번호·연락처·이메일 등)는 대부분 문자 타입이며, 마스킹된 값을 편집할 때 텍스트로 일관되게 다루기 위한 제한입니다.
PK · FK 컬럼은 지정할 수 없습니다. 기본키·외래키는 편집과 조인의 기준이 되므로, 이미 지정된 컬럼이 나중에 PK/FK가 되면 민감 지정이 자동으로 해제됩니다.
마스킹이 적용되는 곳

마스킹 대상 역할에게는 민감 컬럼 값이 아래 모든 경로에서 **** 로 내려갑니다.
- SQL 에디터 결과 그리드
- AI 쿼리 결과 — AI 모델에게도 원본이 아닌
****만 전달됩니다. - 결과 내보내기 — CSV·Excel 등으로 내보낸 파일에도 마스킹된 값이 저장됩니다.
- 미리보기 패널
마스킹된 셀 편집

마스킹된 셀은 원본을 표시하지 않으므로, 편집을 열면 빈 값으로 시작합니다. 아무것도 입력하지 않고 저장하면 값이 바뀌지 않고, 새 값을 입력하면 그 값으로 UPDATE 됩니다. 즉 편집 중에도 옛 값이 드러나지 않습니다. 단, 기본키(PK)로 쓰이는 마스킹 컬럼은 편집할 수 없습니다.
어떤 값이 가려지나
민감 컬럼을 그대로 조회한 값은 물론, 그 컬럼을 가공한 결과(일부만 잘라내거나 다른 값과 합친 경우 등)도 최대한 가립니다. 애매한 경우에는 노출을 막는 쪽으로 판단합니다.
참고 · 제약
- 온라인 팀 프로젝트에서만 동작합니다. 오프라인(개인) 모드에는 적용되지 않습니다.
- 소유자와 전체 권한 역할은 어떤 경우에도 마스킹되지 않습니다.
- 마스킹 대상 역할이 하나도 없으면 민감 컬럼 지정 기능이 비활성화됩니다.
- PK · FK 컬럼은 지정 대상에서 자동으로 제외됩니다.
- 지정 해제는 소유자만 할 수 있습니다.
