# ========================================== # 백엔드 고유 시크릿 (development) # # ⚠️ DB / Redis / CORS / PORT 는 루트 .env.development 에서 docker-compose 가 주입한다. # 여기에 중복 작성하지 말 것 (SSOT: 루트 .env — .claude/rules/env-structure.md). # 이 파일에는 "루트에서 내려주지 않는 값"만 작성한다. # # 사용법: cp .env.development.example .env.development # docker-compose 의 env_file 지시자 때문에 파일은 비어 있어도 존재해야 한다. # ========================================== # JWT 서명 키 — 환경마다 다른 값을 쓰고 절대 커밋하지 않는다. 운영은 32자 이상 필수. # 생성 예: node -e "console.log(require('crypto').randomBytes(48).toString('base64url'))" # (개발에서 비워 두면 개발용 고정 키로 서명한다 — modules/auth/auth.config.ts) JWT_SECRET=change-me-generate-a-long-random-string JWT_ACCESS_EXPIRES_IN=1h JWT_REFRESH_EXPIRES_IN=14d # ========================================== # 소셜 로그인 (앱이 SDK 로 받은 토큰을 서버가 제공자에게 확인한다) # # 비어 있는 제공자는 로그인을 거절한다(AUTH_001). 값은 각 개발자 콘솔에서 확인한다. # ========================================== # 카카오 앱 ID (숫자) — 토큰이 우리 앱에서 발급됐는지 확인한다 KAKAO_APP_ID= # 네이버 클라이언트 ID — 설정해야 네이버 로그인이 켜진다 NAVER_CLIENT_ID= # 구글 OAuth 클라이언트 ID (iOS·Android 등 여러 개면 콤마로 구분) — id_token 의 aud GOOGLE_CLIENT_IDS= # Apple 번들 ID·서비스 ID (콤마 구분) — id_token 의 aud APPLE_CLIENT_IDS= # 개발용 로그인(POST /api/auth/dev-sessions) — 소셜 앱 키 없이 기기 키로 가입한다. # 운영에서는 이 값과 무관하게 항상 꺼진다. 개발에서도 끄려면 false. AUTH_DEV_LOGIN=true