제공 서비스
웹 보안 점검 소스코드 분석 (SAST) CRM 보안 진단 다크웹 유출 조회
요금제 스토어 블로그 파트너 마이페이지 무료 보안 점검
CRM보안 2026.04.01 · 조회 148

Supabase CRM 보안 설정 가이드: RLS부터 API 키 관리까지

Supabase로 만든 CRM에서 가장 많이 하는 실수 — RLS 미설정, anon key 남용, 서비스키 노출. 올바른 설정법을 정리했다.

Supabase CRM, 왜 뚫리는가

Supabase는 바이브코딩 CRM의 백엔드로 가장 많이 쓰인다. 문제는 기본 설정 그대로 쓰면 모든 데이터가 공개된다는 것이다.

2025년 Lovable 사건에서 170개 이상의 Supabase 앱이 RLS 미설정으로 데이터가 노출됐다. 대부분 고객 관리, 주문 관리 등 CRM 성격의 앱이었다.

필수 보안 설정 4단계

1단계: RLS 활성화

모든 테이블에 RLS를 켜야 한다. Supabase 대시보드에서 테이블 → Authentication → Enable RLS.

-- customers 테이블 RLS 활성화
ALTER TABLE customers ENABLE ROW LEVEL SECURITY;

-- 인증된 사용자만 자기 데이터 조회
CREATE POLICY "Users can view own customers"
  ON customers FOR SELECT
  USING (auth.uid() = user_id);

2단계: anon key vs service_role key 분리

anon key: 클라이언트(브라우저)에서 사용. RLS 정책의 적용을 받는다.

service_role key: 서버에서만 사용. RLS를 우회한다. 절대 클라이언트에 노출하면 안 된다.

AI가 코드를 생성할 때 service_role key를 프론트엔드에 넣는 경우가 있다. 이러면 RLS가 무용지물이 된다.

3단계: API 접근 제어

Supabase REST API는 기본적으로 모든 테이블에 CRUD가 가능하다. 필요 없는 테이블은 API 노출을 끄거나, RLS로 완전히 차단해야 한다.

4단계: 실시간 구독 보안

Supabase Realtime을 쓰는 CRM에서, 구독 필터 없이 전체 테이블 변경사항을 수신하면 다른 사용자의 데이터까지 받을 수 있다.

내 Supabase CRM 점검하기

CodeScan은 Supabase 설정 오류를 자동 탐지한다. RLS 미설정, 서비스키 노출, API 접근 제어 상태를 30초 만에 확인할 수 있다.

→ 무료 CRM 보안 진단 받기

Supabase CRM RLS API키 바이브코딩

내 사이트도 점검해보세요

CodeScan으로 보안 취약점을 무료로 점검할 수 있습니다.

무료 스캔 시작하기 →
🛒
추천 상품
웹서비스 런칭 전 보안 세팅
런칭 전에 반드시 해야 하는 보안 설정을 원격으로 직접 해드립니다. HTTPS, 환경변수 분리, 보안 헤더…
220,000원 150,000원

🔒 바이브코딩 보안 체크리스트 받기

바이브코딩 보안 체크리스트(PDF)를 무료로 받아보세요.