Lovable한국어 문서

Secrets

API 키와 그 밖의 민감한 값을 Lovable Cloud에 안전하게 저장하고, 시크릿과 VITE_ 환경 변수의 차이를 이해합니다.

시크릿은 API 키, 토큰, 자격 증명 같은 민감한 값을 코드에 노출하지 않고 저장합니다. 이 값은 암호화되어 Edge Function에 자동으로 주입되며 브라우저에는 절대 도달하지 않습니다.

시크릿은 대개 직접 추가하지 않습니다. 기능에 시크릿이 필요할 때 Lovable이 채팅의 안전한 입력창을 통해 값을 입력하도록 프롬프트합니다. 예를 들어 다음과 같은 프롬프트는 Lovable이 필요한 키를 요청하게 만듭니다.

클라이언트가 온라인으로 인보이스를 결제할 수 있도록 Stripe를 연결해줘. 필요한 API 키가 있으면 나한테 물어봐줘.

시크릿을 직접 관리하려면 Cloud tab → Secrets로 이동합니다.

시크릿 관리

Secrets 뷰는 각 시크릿의 이름과 생성 날짜를 나열합니다. 값은 절대 표시되지 않습니다.

  • Add secret은 이름과 값 쌍을 하나 이상 입력할 수 있는 대화상자를 엽니다.
  • Remove는 시크릿을 삭제합니다. 되돌릴 수 없으며, 어떤 기능이 여전히 그 값을 필요로 한다면 다시 추가하기 전까지 앱이 작동하지 않습니다.
  • 시크릿은 쓰기 전용입니다. 한번 저장한 시크릿의 값은 Lovable에서 다시 볼 수 없으며 교체하거나 삭제만 할 수 있습니다. 키를 잃어버렸다면 그 키를 발급한 서비스에서 새로 생성하세요. 프로젝트를 remix할 때 시크릿은 복사되지 않습니다.

일부 시크릿에는 배지가 붙습니다.

  • Lovable: Lovable이 관리하며 플랫폼 작동에 필요합니다. 삭제할 수 없습니다.
  • Manage: 커넥터가 추가한 값입니다. 값은 연결이 관리하며, Secrets 뷰가 아니라 연결을 제거해서 삭제합니다.
  • Not in use: 같은 이름의 다른 시크릿이 런타임에서 우선합니다.

내장 AI가 사용하는 LOVABLE_API_KEY 시크릿에는 Rotate 동작이 있습니다. 키가 노출되었다고 의심되면 교체하세요. Lovable이 새 키를 발급하고 Edge Function 환경을 자동으로 업데이트합니다. 교체하려면 editor 이상의 접근 권한이 필요합니다.

Secrets vs. VITE_ environment variables

Lovable의 Secrets 관리자는 백엔드 값 전용입니다. Edge Function과 서버 사이드 통합에서 사용하는 값만 여기에 저장합니다. VITE_ 접두사가 붙은 값은 빌드 타임에 브라우저에 노출되는 값이므로 Secrets가 아닌 프로젝트의 .env 파일에 보관해야 합니다.

  • 백엔드 시크릿(Secrets에 저장): STRIPE_SECRET_KEY, RESEND_API_KEY, OPENAI_API_KEY, 서드파티 서비스 자격 증명, 브라우저에 절대 노출되어서는 안 되는 모든 값.
  • 프런트엔드 변수(.env에 저장): VITE_ 접두사가 붙은 모든 값. 예: VITE_SUPABASE_URL, VITE_SUPABASE_PUBLISHABLE_KEY. 이 값들은 빌드 타임에 클라이언트 번들에 포함되며 공개되어도 안전합니다. Lovable 코드 에디터 또는 동기화된 GitHub 저장소의 .env 파일에서 확인하고 편집할 수 있습니다.

Lovable 프로젝트에서 .env.gitignore추가하지 마세요. Lovable은 미리보기와 배포 빌드를 생성할 때 VITE_* 값이 필요하므로 .env가 저장소에 커밋되어 있어야 합니다. gitignore하면 미리보기가 작동하지 않습니다.

Secrets에 VITE_ 접두사가 붙은 이름을 추가하려 하면 Lovable이 "VITE_ prefixed variables are build-time browser values and should be defined in .env files, not in secrets." 메시지와 함께 거부합니다.

Reserved secret name prefixes

다음 이름 접두사는 Lovable Cloud가 자동으로 관리하며 Secrets UI에서 생성하거나 덮어쓸 수 없습니다.

  • SUPABASE_: 예를 들어 SUPABASE_URL, SUPABASE_ANON_KEY, SUPABASE_SERVICE_ROLE_KEY, SUPABASE_DB_URL. Cloud(또는 연결된 Supabase 프로젝트)가 활성화될 때 Lovable이 자동으로 채웁니다.
  • LOVABLE_: 내장 AI가 사용하는 Lovable API 키 같은 Lovable 관리형 값을 위해 예약됩니다.

이 값들은 직접 추가할 필요가 없습니다. 이미 Edge Function 환경에 존재하므로 함수 코드에서 직접 참조할 수 있습니다(예: Deno.env.get("SUPABASE_SERVICE_ROLE_KEY")).

프로젝트가 Lovable Cloud 대신 외부 Supabase 연결을 사용한다면 시크릿은 Supabase에서 관리됩니다. 백엔드 뷰에 표시되는 Manage secrets 버튼이 Supabase 프로젝트의 대시보드를 엽니다.

FAQ

On this page