경고 사례: 쿠팡이 회원 3천만 명 개인정보 유출로 과징금 600억+ (개인정보 제재 역대 최대). 대단한 해킹이 아니라 "기본 안전관리 미흡"이 개인정보보호위 판단 — 규모만 다를 뿐 AI로 만든 회원가입도 같은 종류의 문제를 안고 시작.
한 줄 프롬프트의 함정: "이메일·비밀번호로 가입/로그인 만들어 줘" 한 줄이면 화면은 5분 만에 나오지만, 이 상태로 서비스를 열면 5가지가 비어 있음. 이는 기능 추가가 아니라 의사결정의 문제.
비밀번호는 해시 저장이 기본: 로그인 = 인증(너 누구야 확인) + 세션(당분간 안 물어봄) 두 가지. 비밀번호는 원본 보관 금지, 복원 불가능한 해시로 저장 → 운영자도 사용자 비밀번호를 모름. Rails 프레임워크가 자동 암호화하므로 AI에게 시키라 안 해도 해시 처리됨. 유출 사고에서 피해 크기를 가르는 기본기.
가져갈 한 문장: AI 시대에 만드는 사람의 실력은 코드가 아니라 결정 목록에서 온다. 코드는 AI가 다 짜지만, 실전 프롬프트는 서비스를 만들고 운영해 본 사람만 쓸 수 있다.
03기술적 맥락
빠진 5가지는 전부 "코드 난이도"가 아니라 정책 결정이다. (1)비밀번호 재설정 링크의 유효시간·1회성 여부, (2)회원정보 수정 시 현재 비밀번호 재확인 여부, (3)탈퇴 시 진짜 삭제 vs 소프트 딜리트(표시만)+개인식별정보 익명화, (4)개인정보 처리방침, (5)이용약관. 결제 이력이 있으면 세법상 거래 기록 보존 의무가 있어 전부 삭제하면 오히려 위반 — 그래서 개인식별정보는 익명화하고 거래기록은 남긴다. 이 판단은 만들기 전에 정해야 AI에게 시킬 수 있다.
04전략적 의미
비용·법의 문제로 직결: 처리방침을 만들지 않거나 공개하지 않는 것만으로 1천만 원 이하 과태료 조항. 이제 막 시작한 서비스엔 큰 부담. 탈퇴 요청을 처리하지 않으면 삭제권 위반으로 법적 문제.
약관은 운영자를 지키는 문서: 약관은 가입 순간 맺는 계약. 없으면 어뷰징·사기 사용자를 내보낼 근거가 없다. 관리자 정지 버튼의 정당성도 약관에서 나온다 — 약관이 없으면 "운영자 마음대로 내쫓기", 있으면 "계약에 따른 조치".
복붙 금지: 처리방침이 실제 서비스와 다르면 그 자체가 위반. 수집 안 하는 걸 썼거나 수집하면서 안 쓴 게 있으면 위반. 문서는 "내 서비스가 무슨 데이터를 다루는가"에서 출발해야 하며, 그걸 가장 잘 아는 건 방금 코드를 짠 AI다.
실전 프롬프트로 승급: "재설정 링크 30분·1회용, 탈퇴는 표시만+익명화, 처리방침은 실제 수집 항목 기준, 하단 링크·동의 체크박스" 등 정책을 명시해 한 번에 실서비스 수준으로 생성.
AI를 기획 파트너로: 프롬프트 끝에 "구현 전 내가 정하지 않은 정책 중 결정이 필요한 게 있으면 먼저 질문해 줘"를 항상 넣기 → AI가 이메일 인증 여부·사업자 정보 등을 되물으며, 묻는 것 자체가 공부가 됨.
소셜 로그인 조합: 카카오·구글 로그인을 붙이면 비밀번호 찾기 1개만 줄어들 뿐, 탈퇴·처리방침·약관은 그대로 필요. 오히려 "카카오로부터 받는 정보" 항목이 처리방침에 추가돼야 함.
07현황 및 전망
Rails는 로그인·메일·DB·파일 업로드·관리자가 프레임워크 안에 다 들어 있어 외부 서비스 연동(대시보드·키 발급) 없이 AI가 코드만으로 전 기능을 관리 — 외주 제작·인수인계에 유리. DB 구조 변경도 마이그레이션으로 순서대로 기록·적용·롤백되어 운영 중에도 안전하게 수정 가능. 결론: AI로 회원가입은 5분이지만, 서비스가 되려면 결정 목록이 먼저 채워져야 하며 코드는 AI가, 결정은 사람이 한다. 기능 변경마다 사용자 안내와 처리방침·약관 업데이트가 계속 필요하다는 점이 AGI 전까지의 승부처.