주니어가 가장 많이 하는 실수 - 개인정보 관리
많은 주니어, 혹은 시니어 개발자라도 개인정보 보안과 관리를 지나치는 경우가 많습니다. 어떤 데이터들이 보호받아야 하고, 서비스는 어떤 조치를 취해야 하는지 간단하게 알아봅시다.

회원 마이페이지 API를 만들 때 /users/{user_id} 같은 엔드포인트를 그대로 열어두신 적 있나요?
눈치 빠른 사용자가 내 user_id를 알아내 요청을 보내면, 별도의 권한 검증 없이 다른 사람의 개인정보가 그대로 노출될 수 있습니다.
이건 단순한 버그가 아니라 명백한 개인정보 유출 사고이며, 실제 서비스에서는 법적 책임까지 이어질 수 있습니다.
IT 서비스에서 가장 중요한 것은 뭐라고 생각하시나요?
체계적이고 빠른 코드와 최적화, 훌륭한 서비스 아이템, 사람을 빨아들이는 UI, UX
모두 중요하지만, 실제 서비스에서 그보다 중요시되어야 할 것은 우리의 서비스를 사용하는 유저들의 개인 정보를 관리하는 것이라 생각합니다.
프로젝트를 진행해도 실제 유저를 받기 힘든 주니어에게는 그저 서비스를 만드는 과정과, 결과물만이 중요하다 느껴집니다.
그래서 회원가입 시에도 사용자에게서 어떤 정보를 가져갈 것이고, 어떻게 관리할 것인지, 탈퇴 요청 시에는 어떻게 폐기되는지에 대해 고지하지 않은 채, 휴대폰 번호, 이메일 등을 가져가곤 합니다.
당연하지만, 실제 유저가 한 명이라도 발생하는 순간 개인정보 유출 문제에 책임이 생깁니다.
그럼에도 너무나 어렵고, 재미없는 개인정보 관리
IT 서비스에서 다른 모든 것들이 이루어지지 않는다고 해도, 그저 사용자가 없거나,많은 문의 메일에 시달리는 정도겠지만 (물론 서비스 장애는 보상까지도 갈 수 있겠죠)
유저의 개인정보가 유출되는 순간 서비스 뿐만 아닌 회사, 직장의 존폐가 갈리게 됩니다.
그렇기에 규모가 있는 회사에서는 데이터 거버넌스, 컴플라이언스 조직과 보안팀이 존재하는 것이죠.
그러나, 아무리 작은 서비스, 회사라고 해도 사용자, 특히나 돈을 내는 유저가 있다면 반드시 개인정보 수집과 관리에 대한 방침을 세우고, 이를 고지해야만 합니다.
대한민국에서는 개인정보 보호법 [시행 2025. 3. 13.] [법률 제19234호, 2023. 3. 14., 일부개정]에 따라,
정보 주체 동의 없이 개인정보 수집-이용 / 목적 고지 없이 수집 시, 제 71조 처벌 조항에 따라 5년 이하의 징역 또는 5천만원 이하의 벌금에 처해질 수 있습니다.
형사처벌을 피하기 어려우며, 이런 처벌 보다도 서비스에 대한 신뢰도가 크게 하락하는 문제이므로, 개인정보 수집에 대한 고지는 반드시 진행해야 합니다.
그렇다면 어떤 정보를 수집하면 위험할까?
개인 정보는 범주화와 적용 보안 강도를 따졌을 때, 다음과 같이 범주화됩니다.
또한 아래에 해당되는 정보들은 수집과 관리 방침을 반드시 고지해야 하며,
회원 탈퇴 시 관리 방침에 따라 파기하거나 식별이 불가능하도록 변경해야 합니다.
- 일반 개인 정보
- 이름, 전화번호, 이메일, 주소, 생년월일 등
- 충분히 개인을 특정할 수 있고, 개인을 나타내는 정보들입니다.
- 수집·이용 목적, 수집 항목, 보유 및 이용 기간을 명확히 알리고 정보 주체의 동의를 받으면 수집할수 있습니다. 다만, 동의받은 목적 외로 이용하거나 제3자에게 제공하려면 별도 동의가 필요합니다.
- 민감정보
- 인종, 사상, 신념, 정치 성향, 노조 가입여부, 건강 및 의료 정보, 성생활 등
- 특정 서비스를 위해 반드시 필요한 데이터가 아니라면 애초에 수집이 막히며, 엄격한 동의 절차가 필요하므로 정말 필요한 경우만 수집하는 것이 좋습니다.
- 특히나, 유럽 및 영미권 (GDPR, CCPA 영향을 받는)에서는 성별 정보 또한 비슷한 수준으로 관리됩니다.
- 고유 식별 정보
- 주민등록번호, 여권번호, 운전면허번호, 외국인 등록번호 등
- 당연하게도, 법령 근거가 없으면 사용자의 동의가 있더라도 수집이 불가능하며, 유출 등의 문제 발생 시 일반 개인정보 보다 훨씬 강도 높은 처벌을 받습니다.
- 대부분 서비스에서 본인인증을 외부 인증 서비스(PASS, 휴대전화, 네이버/카카오 등)로 처리하는 이유이기도 합니다.
- 결제 관련 정보
- 신용카드 번호, 은행 계좌, 결제 이력 등
- PCI DSS(Payment Card Industry Data Security Standard)를 준수해야 시작이 가능합니다.
- PCI DSS는 법적 강제사항은 아니지만, 카드사 및 결제 대행사들의 표준 규약이므로, 따르지 않는 경우 결제망을 못 쓰게 된다는 비즈니스 패널티가 존재합니다.
- 유출될 경우 사용자에게 직접적인 금전적 피해를 안겨다 주므로, 수집/활용에 대단히 주의해야 할 데이터입니다.
- 위치 정보
- 근접 정보, 실시간 GPS 정보 등
- 위치 정보는 다시 실시간 위치 정보라는 하위 항목이 있습니다.
- 시/군 수준의 대략적인 위치 확인이 가능한 데이터라면, 충분한 고지와 익명화를 통해 수집할 수 있습니다.
- 실시간 GPS 정보는 별도의 위치정보법이 적용되므로, 위치정보사업자/위치기반서비스 사업자 등의 신고 및 허가가 필요합니다.
- 14세 미만 아동의 경우
- 대부분의 항목에서 법적 대리인의 추가적인 동의가 있어야 합니다.
- 제 3자 제공의 경우
- 외부 서비스에 데이터를 제공하는 경우에는 이에 대한 동의 및 고지가 필요합니다.
- ex) AA은행이 AA카드사에 데이터를 마케팅용 데이터를 제공하는 경우
중요한 것은 "개인 특정이 가능한가?"
위에 나열된 데이터가 아니거나, 데이터 중 일부라고 해도, 시스템 사용 로그, IP 기록, 디바이즈 성보 등을 활용해 개인을 특정할 수 있다면, 해당 데이터들 또한 여전히 개인정보로 간주됩니다.
1. “개인정보”란 살아 있는 개인에 관한 정보로서 성명, 주민등록번호 및 영상 등을 통하여 개인을 알아볼 수 있는 정보(해당 정보만으로는 특정 개인을 알아볼 수 없더라도 다른 정보와 쉽게 결합하여 알아볼 수 있는 것을 포함한다)를 말한다.
즉, "이게 개인 정보라고?" 싶은 데이터 들도 조합을 통해 개인 신원 특정이 가능하다면 개인정보로 분류되는 것입니다.
그렇기 때문에 고유 식별 번호와 카드 번호, 결제 내역, 실시간 위치 정보 등, 개인 신원 특정이 대단히 쉬운 데이터들은 매우 까다로운 동의, 보안, 법적 절차를 거쳐야만 수집이 가능해지는 것입니다.
다만, 명시된 종류의 데이터가 아닌 경우에는 해석의 여지에 따라 개인정보가 될 수도 있는 것이므로, 지레 겁을 먹을 필요는 없습니다.
단순히, 유저에게서 어떤 데이터를 수집하고, 어떻게 관리하는지만 충분히 고지하고, 실제로 그를 이행하여 안전히 운영한다면 문제는 발생하지 않을 것입니다.
그럼 개인정보 처리 방침은 어떻게 만들고, 고지할까?
가장 좋은 방법은 당연히 법조계 전문 인력의 도움을 받는 것이지만, 규모가 작은 스타트업이나, 프로젝트 경험을 쌓는 주니어/취준생 입장에선 쉽지 않습니다.
저는 일단 수집 항목을 만들고, 관리가 까다로운 데이터 (같은 일반 개인 정보지만 이메일보단 휴대폰 번호가 좀 더 까다로운 데이터로 취급됩니다)를 최소화하는 것이 중요하다 생각합니다.
혹시나 쓸 수 있을지 모르니까, 퍼널 분석이 쉬워지니까, 등의 이유로 수집 데이터를 늘리는 것은 위험한 선택입니다.
정말 우리 서비스를 이용하는 데에 필요한 데이터가 맞는지 확인하고, 아니라면 수집하지 않도록 과감히 결정할 필요가 있습니다.
수집할 데이터의 종류가 정해졌다면, 관리 방침을 설정해야 합니다.
일반적으로 회원 탈퇴 및 별도 요청이 있는 경우에는 이를 즉시 또는 정해진 기간 내에 삭제해야만 하며, 유출되지 않도록 만들어야 합니다.
그리고 본격적인 동의서/고지서 작성이 필요하겠는데요, 필수적으로 들어가야 할 내용을 예시와 함께 정리한다면 다음과 같겠습니다.
항목 |
내용 |
---|---|
수집·이용 목적 |
예: 회원 가입 및 서비스 제공, 뉴스레터 발송, 고객 지원 등 |
수집항목 |
예: 이름, 이메일 주소, 사용자 아이디, 로그인 기록, IP 주소 등 |
보유 및 이용 기간 |
예: 회원 탈퇴 시 또는 계약 종료 후 즉시 삭제, 로그 기록은 서비스 운영 목적으로 ○○개월 보관 |
제3자 제공 |
예: 없음 / 마케팅 파트너 X사에게 이메일 제공 등 (만약 있다면) |
위탁 처리 |
예: 이메일 발송 서비스(메일링 툴) 위탁 / 데이터 호스팅 업체 위탁 등 |
동의를 거부할 권리 및 불이익 |
예: 동의를 거부할 수 있으나 회원가입 혹은 특정 서비스 이용 제한 가능 / 대가 없음 |
안전조치 |
암호화 저장, 접근권한 관리, 로그 모니터링 등 |
개인정보 주체의 권리 |
열람·수정·삭제·동의 철회 가능 / 개인정보 보호책임자 연락처 제공 등 |
또 하나의 좋은 방법은, 우리 서비스와 비슷한 성격의 서비스들이 어떤 개인정보를 수집하고, 이를 어떻게 관리·보관하며, 어떤 방식으로 사용자에게 고지하는지를 직접 살펴보는 것입니다.
이미 시장에서 운영 중인 서비스들은 수많은 시행착오와 규제 검토를 거쳤기 때문에, 이들의 개인정보 처리방침을 참고하면 큰 도움을 받을 수 있습니다.
단, 그대로 베끼는 것이 아니라 우리 서비스의 특성에 맞게 조정하는 과정이 반드시 필요합니다.
다음은 한국의 개인정보 보호법 (PIPA) 뿐만 아닌, 글로벌 업계 국룰인 GDPR과 CCPA를 살펴보도록 하겠습니다.