CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·아이포니앙 ·주식한당 ·MaClien ·일본산당 ·자전거당 ·개발한당 ·안드로메당 ·방탄소년당 ·이륜차당 ·노젓는당 ·소시당 ·AI당 ·디아블로당 ·소셜게임한당 ·클다방 ·캠핑간당 ·콘솔한당 ·달린당 ·테스트당 ·가상화폐당 ·육아당 ·골프당 ·리눅서당 ·볼링친당 ·키보드당 ·나스당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·사과시계당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·곰돌이당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·전기자전거당 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·물고기당 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·걸그룹당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·방송한당 ·바다건너당 ·PC튜닝한당 ·찰칵찍당 ·그림그린당 ·소풍간당 ·심는당 ·패스오브엑자일당 ·라즈베리파이당 ·품앱이당 ·리듬탄당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·축구당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·퐁당퐁당 ·테니스친당 ·빨콩이당 ·공대시계당 ·여행을떠난당 ·터치패드당 ·트윗당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·위스키당 ·와인마신당 ·WOW당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[공지] 10월 3일(토) 00:00~00:30 서버 작업 안내 더보기

팁과강좌

PC/모바일 민감정보 때문에 클라우드를 버리고 로컬 설치형으로 갈아엎은 기록 (2) — 결국 다시 서버로 돌아왔습니다 3

1
2026-10-11 21:32:01 1.♡.143.114
바이올렛아워

지난 글에서는 서버에 데이터를 모으는 구조를 접고 로컬 설치형으로 바꾼 이야기를 했습니다.


장애 유형과 등급 같은 민감한 정보를 개발자 서버에 보관하는 문제, 그 데이터를 맡는 책임이 걸렸습니다. 그래서 기관 PC에 원본을 두기로 했고, PostgreSQL을 SQLite로 바꾸면서 RLS도 걷어냈습니다.


그런데 그 뒤에, 결국 다시 서버로 돌아왔습니다.


지난 글만 읽으면 지금도 로컬 설치형으로 개발하고 있다고 생각하실 것 같아, 이번에는 그 이후 이야기를 적습니다.


1. 지난 글의 마지막이 최종 구조는 아니었습니다


처음에는 Next.js와 NestJS, PostgreSQL을 쓰는 서버형이었습니다. 기관별 데이터 격리는 RLS로 처리했고요.


이후에는 Electron을 사용하는 로컬 설치형으로 바꿨습니다. 두 구성을 계속 유지하지 않으려고 기존 디렉터리도 정리했습니다. 여기까지가 지난 글의 이야기입니다.


그리고 다시 서버형으로 방향을 바꿨습니다.


그렇다고 처음 지웠던 구성을 전부 그대로 복구했다는 뜻은 아닙니다. 서버에서 운영한다는 결정과 어떤 프레임워크나 DB를 사용한다는 것은 구분해야 합니다. RLS도 서버로 돌아왔다는 이유만으로 다시 적용됐다고 설명할 수는 없습니다.


2. 지금은 서버에 배포해서 확인하고 있습니다


10월 5일 기준으로 NCP와 Nginx를 사용하는 서버 배포를 확인했습니다. 공개 홈과 샘플 화면, 인증되지 않은 요청을 거부하는 보호 API, 기관 승인 후 기관과 사용자 계정이 활성화되는 흐름도 확인했습니다.


다만 여기서 확인한 것은 그 범위까지입니다.


로그인하지 않은 요청에 401이 나온다는 것과, 로그인한 사람이 다른 기관의 데이터를 볼 수 없다는 것은 서로 다른 검증입니다. 기관 승인이 있다는 것과 같은 기관 직원들의 권한이 적절하게 나뉘어 있다는 것도 다르고요.


배포가 됐다는 설명에 이런 것들을 한꺼번에 묶으면 안 됩니다.


3. 처음 서버를 접었던 이유는 없어지지 않았습니다


서버로 돌아왔다고 민감한 정보를 다루는 부담까지 없어지는 것은 아닙니다.


어떤 데이터를 꼭 저장해야 하는지. 기관 사이의 경계는 어디에서 확인하는지. 같은 기관 안에서는 누가 무엇을 볼 수 있는지. 운영 중 문제가 생겼을 때 개발자는 어디까지 접근하는지.


처음 로컬 설치형을 선택하면서 고민했던 질문들입니다. 서버형에서도 여전히 답이 필요한 질문들이고요.


암호화를 쓴다는 한마디로 보관과 접근 문제가 전부 설명되지도 않습니다. 무엇을 암호화하는지, 누가 복호화할 수 있는지, 백업과 복원은 어떻게 처리하는지가 함께 있어야 합니다.


이번 글에서 그 부분까지 모두 해결됐다고 말하려는 것은 아닙니다. 현재 구조와 실제로 확인한 범위를 나눠 적으려는 것입니다.


4. 로컬과 서버 중 하나를 고르면 끝나는 줄 알기 쉽습니다


로컬에서는 기관 PC와 파일, 설치 버전과 업데이트를 챙겨야 합니다. 서버에서는 여러 기관의 접근 권한과 데이터 보관, 운영을 챙겨야 합니다.


데이터를 놓는 위치에 따라 관리할 곳이 달라집니다. 어느 쪽을 골랐다는 사실 자체가 안전하다는 증명은 아닙니다.


종이 결재와 엑셀 근태·급여, 담당자 머릿속에 흩어진 이용자 정보를 정리하려고 시작한 작업입니다. 그 문제는 그대로인데, 구현하는 구조는 한 번 더 바뀌었습니다.


마치며


1편에서는 결정을 미룬 시간이 비쌌다고 적었습니다.


그 글을 쓰고도 결정이 다시 바뀌었습니다. 그래서 로컬로 바꿨다는 기록 옆에, 다시 서버로 돌아왔다는 기록도 남깁니다.


지금은 서버형으로 진행하고 있습니다. 다만 서버에 올린 것, 기능이 동작하는 것, 데이터가 적절하게 보호되는 것은 각각 확인해야 할 일입니다.


다음 기록에서는 방향을 바꿨다는 설명보다 실제로 무엇을 확인했고 무엇이 남았는지를 더 구체적으로 적어보려고 합니다.

바이올렛아워 님의 게시글 댓글
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [3]
그시절그때
IP 218.♡.203.3
10-11 2026-10-11 21:51:05 / 수정일: 2026-10-11 21:52:09
·
그러면 민감정보는 어디에 저장하는 걸로 하셨나요?
클라우드에 저장한다면 아마존 상암리전 아닌 이상 정보의 해외이전 문제도 있을 테고,
로컬에 저장한다면 하드웨어 고장 문제도 생각해야 할 것 같은데요.
바이올렛아워
IP 1.♡.143.114
10-11 2026-10-11 22:23:55
·
@그시절그때님 지적하신 부분이 맞습니다. 1편 이후 다시 서버형으로 전환했고, 현재 코드와 배포 설정은 네이버클라우드 서버에 SQLite DB를 두는 구성입니다.

다만 서버를 어느 회사에 두는지와 실제 데이터가 어디에 저장·처리되는지는 구분해서 확인해야 한다고 보고 있습니다. 국내 리전을 쓰더라도 외부 연동이나 백업, 해외에서의 접근 경로까지 확인해야 해서, 국내 서버라는 이유만으로 국외 이전 문제가 없다고 말씀드리기는 어렵습니다.

하드웨어 고장 문제도 로컬만의 문제는 아니라고 생각합니다. 백업을 암호화하고 복원하는 기능과 테스트 기록은 있지만, 운영 자동 백업과 서버 밖 복사본, 실제 운영 환경에서의 복구 검증까지 완료됐다고 말씀드릴 단계는 아닙니다.

글에서 설계 방향과 실제 운영에서 확인된 범위를 더 명확하게 구분했어야 했네요. 저장 위치와 백업·복구 상태를 정확히 확인해서 보완하겠습니다. 짚어주셔서 감사합니다.
이지EZ
IP 211.♡.64.180
05:16 2026-10-12 05:16:54
·
저와 비슷한 고민을 하시네요 저도 개인정보 때문에 로컬로 하다가 결국 네이버 클라우드를 선택했는데 이또한 고민할게 한두가지가 아니더라구요
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB / 업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.