보안·인증 (Security)¶
데이터스케쳐스는 여러 고객이 같은 시스템 안에 서로의 데이터를 섞이지 않게 두는 멀티테넌트 구조예요. 그래서 여기서 보안은 단순히 "로그인이 잘 되는가"가 아니라, 고객 데이터를 남의 것으로부터, 그리고 우리 시스템 자체가 잘못 쓰는 일로부터 지키는 일이 핵심이에요. 누가 들어오는지(인증·인가), 들어온 사람이 데이터를 어떻게 보는지(암호화·격리), 일이 터졌을 때 누가 언제 무엇을 했는지(감사·파기)를 함께 챙깁니다.
이 페이지는 그 보안 기술을 배지와 함께 보여주고, 각 항목의 상세 문서로 연결해 줍니다.
처음 오셨다면 상태 배지 규칙만 훑고, 궁금한 항목으로 바로 이동해도 괜찮아요.
상태 배지 규칙¶
- 🟢 운영 — 제품에 실제로 돌아가고 있는 기술
- 🔵 적용 — 도입했거나 적용 중인 기술
- 🟡 로드맵 — 계획 단계인 기술
- ⚪ 역량 — 팀이 다룰 줄 알지만 제품엔 아직 안 쓰는 기술
작성 시점의 스냅샷이라, 신규 도입이 생기면 배지와 함께 갱신해요.
하위 문서¶
- OAuth2 — 권한 위임 — 비밀번호를 직접 주고받지 않고 권한을 위임하는 표준 방식
- JWT — 서명 토큰 — 인증 결과를 서명된 토큰 한 장으로 주고받는 형식
- RBAC — 역할 기반 접근 제어 — 역할 단위로 권한을 나눠 주는 방식
- BYOK — 사용자 키 관리 — 고객이 암호화 열쇠를 직접 갖고 오는 방식 (적용 중)
기술 목록¶
인증·인가¶
- OAuth 2.0 (🟢 운영) — 비밀번호를 직접 주고받지 않고 권한을 위임하는 표준 방식. 외부 서비스(Notion, Google 등)와 연동할 때 우리가 그쪽 비밀번호를 몰라도 되게 해줘요.
- JWT (🟢 운영) — 인증 결과를 서명된 토큰 한 장으로 주고받는 형식. 서버가 세션을 매번 저장하지 않아도 돼요.
- SSO(Single Sign-On) (🔵 적용) — 한 번 로그인하면 여러 서비스(웹빌더·Canvas·Events)를 다시 로그인 없이 오가는 방식. 고객이 계정을 여러 번 만들지 않아도 되죠.
- Spring Security (🟢 운영) — 백엔드에서 인증·인가를 다루는 프레임워크 필터 체인. Spring Boot 기반 서비스들이 토큰 검증과 권한 제어를 공통으로 묶어요.
- RBAC (🟢 운영) — 역할(Role) 단위로 권한을 나눠 주는 방식. 역할에 따라 접근 범위가 달라져요.
- API Key / 부서별 발급 (🟢 운영) — 기계 간 통신에 따로 키를 발급. 부서(테넌트)마다 다른 키를 줘서 어느 팀이 얼마나 호출했는지 추적할 수 있어요.
암호화·데이터 보호¶
- BYOK(Bring Your Own Key) (🔵 적용) — 고객이 자기 데이터를 암호화하는 열쇠를 직접 갖고 오는 방식. 열쇠를 고객이 쥐고 있으니 우리가 함부로 열어볼 수 없다는 신뢰를 만들어줘요.
- AES-256-GCM (🟢 운영) — 저장 데이터를 암호화할 때 쓰는 대칭키 알고리즘. 256비트 키 + 인증 태그가 붙어 위·변조도 걸러내요.
- 멀티테넌트 격리 / Collection Isolation (🟢 운영) — 고객(테넌트)별 데이터를 물리적·논리적으로 분리해 두는 구조. 다른 고객의 데이터가 섞이는 걸 원천 차단해요.
- Zero Retention (🟢 운영) — 서비스를 제공하는 데 필요한 만큼만 잠깐 보고, 쓰고 나면 원본을 남기지 않는 정책. 특히 AI 처리 구간에서 유용해요.
거버넌스¶
- 감사 로그 (🟢 운영) — 누가 언제 어떤 데이터에 접근·변경했는지 남기는 기록. 문제가 생겼을 때 되짚는 단서예요.
더 알아보기¶
- 공식 문서 (1차): OAuth 2.0, JWT, Spring Security, AES(NIST), OWASP Top Ten
- 큐레이션/블로그 (2차): BYOK · AWS KMS, Auth0 블로그