본문 바로가기
C.W.K.
Stream
Lesson 01 of 05 · published

PIN 으로 부족해지는 순간

~15 min · triggers, migration, scaling-up

Level 0Greenhorn
0 XP0/53 lessons0/14 achievements
0/100 XP to next level100 XP to go0% complete

Track 5 의 PIN layer 가 놀랍게 많은 솔로 앱한테 정답이야 — 걸린 게 적은 데이터, 사용자 한 명, 네트워크 perimeter 는 이미 있음. 근데 threat model 은 시간이 지나면 움직이고, auth 도 따라 움직여야 해.

Trigger 조건

Trigger변한 것추가
두 번째 사용자 추가 (파트너, 친구, 가족)이제 누가 했는지가 중요해지는데, PIN 을 공유하면 그게 무너짐Per-user identity (passkey 또는 magic link)
Tailscale 외부에 앱 노출perimeter 가 사라지고 PIN 이 유일한 게이트가 됨2FA + reverse-proxy WAF + 더 긴 PIN 의무화
데이터가 민감해짐건강, 재무, 업무 시크릿, NDA 자료하드웨어 키, at-rest 암호화 데이터, audit 로그 보존
유료 사용자 추가컴플라이언스 들어옴진짜 IdP (Auth0, Clerk, Supabase Auth)
반복되는 brute-force baseline 도달공격자가 네 발견했고 신경 씀Edge 에서 rate-limit, reCAPTCHA / Turnstile, geo-block
모바일 앱 추가쿠키 기반 session 모델은 브라우저용이지 native 앱용이 아님OAuth2 device flow, refresh 토큰, native biometric

안 변하는 것

업그레이드를 하더라도 솔로 개발자용 session 을 위해 PIN layer 는 남겨둬. defense in depth 는 네트워크 perimeter 와 per-user identity 와 애플리케이션 레벨 게이트가 함께 사는 거야. "더 좋은 게 생겼으니까" 하면서 layer 를 걷어내는 것 — 현장에서 제일 흔한 downgrade 패턴이 이거야.

External links

Exercise

네 앱들 각각에 이미 넘은 trigger 조건 (있으면) 적어. 솔로 앱은 대개 아직 안 넘었을 거야. 그것만으로도 쓸모 있는 현실 점검이고. 넘은 게 하나라도 있으면 (예: '친구 계정 추가') 새 layer 를 *대체가 아니라 나란히* 붙이는 1주짜리 마이그레이션 계획을 초안으로 써봐.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.