Skip to content

Latest commit

 

History

History
52 lines (32 loc) · 5.53 KB

File metadata and controls

52 lines (32 loc) · 5.53 KB

로그인·회원가입 문제 해결

Career Atelier 계정은 Supabase 대시보드 계정이나 데이터베이스 관리자 계정과 다릅니다. 웹에서 한 번 가입한 이메일·비밀번호를 웹과 러너에서 같이 사용합니다. 개인 Supabase 프로젝트마다 첫 소유자 계정 하나만 만들 수 있습니다.

처음 설치할 때

  1. 설치 마법사로 Supabase 연결·마이그레이션·Auth 설정을 마칩니다. Auth 설정 적용 실패는 설치 성공으로 처리하지 않습니다.
  2. cd web, npm run dev를 실행하고 터미널이 안내하는 주소를 브라우저에서 엽니다. 3000번 포트를 사용 중이면 다른 포트일 수 있습니다.
  3. 로그인 화면의 처음이에요 · 계정 만들기를 선택합니다. 본인의 이메일과 직접 정한 8자 이상 비밀번호를 사용합니다.
  4. 이메일 확인 안내가 뜨면 메일의 확인 링크를 연 뒤 로그인합니다. 이미 가입한 계정이라면 새 계정을 만들지 않고 로그인합니다.
  5. 다른 터미널의 runner 폴더에서 npm run login을 실행합니다. 같은 이메일·비밀번호를 입력합니다. 비밀번호는 화면에 표시되지 않습니다.
  6. npm run start 후 웹 관제실에서 이 기기를 승인합니다. 이후에는 저장한 세션을 사용하므로 매번 로그인하지 않습니다.

--owner-email 설치 옵션은 이제 웹 가입 링크에 이메일만 미리 채웁니다. 계정을 생성하거나 임시 비밀번호를 출력하지 않습니다.

기존 설치가 출력한 비밀번호로 실패할 때

예전 설치 코드는 signup의 HTTP 성공 상태만 확인하고 임시 비밀번호를 출력했습니다. 이메일 확인이 필요한 응답이나 중복 가입을 숨긴 응답에는 실제 로그인 세션이 없을 수 있습니다. 출력된 비밀번호가 기존 계정의 비밀번호로 변경됐다는 뜻도 아닙니다.

먼저 자신의 Supabase 프로젝트 Authentication → Users에서 계정 생성 여부와 이메일 확인 상태를 확인하세요. 비밀번호·토큰은 다른 사람에게 보내지 마세요.

  • 계정이 없다면 자신의 웹에서 계정 만들기로 가입합니다.
  • 계정이 있고 이메일 미확인이라면 가입 확인을 마칩니다.
  • 계정이 있고 비밀번호를 모르면 웹의 **비밀번호를 잊으셨나요?**를 사용합니다. 메일이 오지 않으면 스팸함, Supabase Auth 메일 로그·발송 제한·사이트 URL 설정을 확인합니다.
  • 다른 소유자 계정이 이미 있으면 새 이메일로 가입할 수 없습니다. 기존 소유자 계정을 사용하거나 본인의 별도 프로젝트를 준비합니다. 해결을 위해 기존 사용자를 삭제할 필요는 없습니다.

웹은 성공하고 러너만 실패할 때

웹 로그인 화면의 **로그인이 계속 실패하나요?**를 열고 연결 프로젝트를 확인합니다. 러너 로그인 시작 시 표시되는 프로젝트와 같아야 합니다.

위치 비교할 설정
web/.env.local NEXT_PUBLIC_SUPABASE_URL
runner/.env SUPABASE_URL

프로세스 환경변수나 배포 환경이 로컬 파일과 다를 수도 있습니다. 러너 검사는 같은 저장소의 web/.env.local을 비교하며 원격 Vercel 환경을 자동 검사하지는 않습니다. 설정을 바꾸면 웹과 러너를 모두 재시작하세요. 서비스 비밀번호에 공백이 있다면 공백까지 동일하게 입력합니다.

비밀번호 프롬프트에 http://localhost:3000/login을 입력하면 비밀번호가 아니라 주소를 전송한 것입니다. 주소는 브라우저에서 열고 터미널에는 직접 정한 비밀번호만 입력하세요.

다른 Supabase 계정으로 전환하기

웹·Runner를 종료하고 저장소 최상위 폴더에서 supabase logout, supabase login을 순서대로 실행합니다. 브라우저에서도 원하는 Supabase 계정으로 로그인했는지 확인하세요. CLI 로그인만 바꿔서는 이미 작성된 웹·Runner 연결 설정이 바뀌지 않습니다.

npm run setup을 다시 실행해 사용할 프로젝트를 선택하세요. 반드시 새 프로젝트가 필요할 때만 node scripts/setup.mjs --new-project career-atelier-new를 사용합니다. 기존 프로젝트에 연결하면 그 프로젝트의 DB 비밀번호가 필요할 수 있습니다. 새 프로젝트 생성은 계정의 프로젝트 한도에 영향을 받습니다.

설정 파일 교체 질문이 나오면 새 프로젝트로 바꿀 파일을 확인합니다. 웹과 Runner를 서로 다른 프로젝트에 연결한 채 진행하지 마세요. 설정 완료 후 웹을 재시작하고 새 프로젝트에 아직 소유자가 없다면 본인 계정으로 가입합니다. 기존 프로젝트라면 해당 프로젝트의 기존 서비스 계정을 사용합니다.

별도 터미널의 runner 폴더에서 npm run logout → npm run login → npm run start를 실행하고 웹에서 기기를 승인합니다. 이전 프로젝트의 데이터는 새 프로젝트로 자동 이전되지 않으며, 이 과정에서 기존 사용자를 삭제할 필요는 없습니다.

이번 수정의 검증 경계

인증 응답 대역으로 잘못된 계정·이메일 미확인·요청 제한·네트워크 실패·세션 없는 가입을 검증하고, 러너 입력·비밀번호 보존·세션 저장 대기를 테스트합니다. 원격 Windows 기기의 계정 상태나 비밀번호를 직접 확인하거나 변경하는 작업은 포함하지 않습니다.