Supabase와 Retool을 활용한 안전한 다중 사용자 CRM SaaS 구축 (영국 중소기업용)

발행: (2025년 12월 14일 오전 11:38 GMT+9)
8 min read
원문: Dev.to

Source: Dev.to

전통적인 SME용 CRM의 실제 문제점

많은 주류 CRM은 다음과 같은 문제를 가지고 있습니다:

  • 영업 파이프라인 중심으로 설계돼 있어 운영에 맞지 않음
  • 비기술 팀이 사용하기 어려움
  • 작은 팀에 필요 없는 기능이 과다하게 포함됨
  • 다수 사용자를 대상으로 확장하면 비용이 많이 듦

그 결과, 많은 SME는 데이터 일관성, 접근 제어, 확장성 문제에도 불구하고 여전히 스프레드시트를 사용하고 있습니다.

내 목표는 다음과 같은 워크플로우‑우선 CRM을 만드는 것이었습니다:

  • 운영 데이터를 중앙화
  • 다수 내부 사용자를 안전하게 지원
  • 단순하고 비용 효율적 유지

Supabase & Retool를 선택한 이유

Supabase (PostgreSQL + Auth + RLS)

Supabase는 관리형 PostgreSQL 데이터베이스와 내장 인증, 행 수준 보안(RLS)을 제공합니다. 이는 데이터 보호가 프론트엔드가 아니라 데이터베이스 수준에서 강제되어야 하는 SaaS 시스템에 이상적입니다.

Supabase를 선택한 핵심 이유

  • 네이티브 PostgreSQL(강력한 관계형 모델링)
  • 세밀한 접근 제어를 위한 Row Level Security
  • 간편한 인증 통합
  • 프로덕션 시스템에 적합한 확장성

Retool (프론트엔드 & 내부 도구)

Retool을 사용하면 다음을 빠르게 구축할 수 있었습니다:

  • 역할 기반 대시보드
  • 비즈니스 사용자를 위한 내부 도구
  • 비기술 팀을 위한 사용자 친화적 인터페이스

이 조합 덕분에 보안을 희생하지 않으면서도 빠르게 진행할 수 있었습니다.

고수준 아키텍처

Users

Retool (frontend dashboards & workflows)

Supabase (Auth + RLS)

PostgreSQL database

가장 중요한 설계 원칙은 보안 규칙이 UI가 아니라 데이터베이스에 존재한다는 것이었습니다.

클라이언트당 데이터베이스 격리

공유 멀티테넌트 데이터베이스 대신 클라이언트당 데이터베이스 모델을 선택했습니다:

  • 각 클라이언트마다 별도의 Supabase 프로젝트/데이터베이스를 보유
  • 테넌트 간 위험을 크게 감소
  • 접근 제어와 컴플라이언스 문제를 단순화

각 클라이언트 데이터베이스 내에서도 사용자는 인증된 사용자와 연결된 RLS 정책을 통해 엄격히 제어됩니다. 이 접근 방식은 강력한 데이터 격리가 요구되는 SME용 초기 단계 SaaS 플랫폼에 특히 적합합니다.

RLS를 이용한 안전한 다중 사용자 접근 구현

가장 중요한 기술적 측면 중 하나는 Row Level Security를 사용해 사용자 범위 접근을 강제하는 것이었습니다. 프론트엔드 로직에 의존하는 대신, 접근 규칙을 PostgreSQL에서 직접 적용합니다.

-- Users can read their own orders
CREATE POLICY "Users can read their own orders"
ON public.orders
FOR SELECT
USING (user_id = auth.uid());

이 정책은 다음을 보장합니다:

  • 사용자는 자신의 레코드만 접근 가능
  • 프론트엔드가 우회되더라도 데이터는 보호됨
  • 모든 도구와 쿼리에서 보안이 일관되게 유지

민감한 비즈니스 데이터를 다루는 모든 SaaS에 필수적인 패턴입니다.

실용적인 CRM 스키마 설계

데이터베이스 스키마는 일반적인 CRM 개념이 아니라 실제 운영 워크플로우를 중심으로 설계되었습니다. 핵심 엔터티는 다음과 같습니다:

  • 고객
  • 주문
  • 일정 / 날짜
  • 사용자 및 역할

중점은 다음과 같습니다:

  • 엔터티 간 명확한 관계
  • 중복 데이터 방지
  • 향후 기능 확장을 지원

관계형 설계 덕분에 데이터 무결성을 유지하고 제품을 장기적으로 발전시키기 쉬웠습니다.

실제 비즈니스를 위한 개발에서 얻은 교훈

  • 단순함이 기능보다 우선 – SME 채택에 중요
  • 보안은 눈에 보이지 않아야 하지만 신뢰할 수 있어야 함
  • 사업자는 대시보드보다 명확성을 더 중시
  • 피드백 기반 빠른 반복이 경쟁 우위

많은 결정이 가정이 아니라 사업주와의 직접 대화를 통해 이루어졌습니다.

확장성 및 향후 개선 사항

시스템은 다음과 같은 방식으로 점진적으로 확장되도록 설계되었습니다:

  • 새로운 워크플로우 모듈 추가
  • 보고 및 분석 기능 강화
  • 고객용 포털 도입
  • 반복적인 운영 작업 자동화

핵심 아키텍처가 모듈형이기 때문에 이러한 개선을 시스템 전체를 재설계하지 않고도 도입할 수 있습니다.

마무리 생각

SME를 위한 안전한 SaaS 제품을 만든다고 해서 엔터프라이즈 수준의 복잡성이 필요한 것은 아닙니다—하지만 신중한 아키텍처와 강력한 보안 기반은 필수입니다.

다음 요소들을 결합함으로써:

  • PostgreSQL + RLS (Supabase)
  • 빠른 프론트엔드 툴링 (Retool)
  • 워크플로우‑주도 제품 설계

작은 기업의 운영 방식을 실제로 개선할 수 있는 프로덕션‑급 시스템을 제공할 수 있습니다. 이 접근 방식 덕분에 현재 영국 기업들이 채택하고 있는 안전한 CRM SaaS 플랫폼을 제공하고 있으며, 동일한 패턴을 다양한 SME‑중심 디지털 제품에 재사용할 수 있습니다.

Back to Blog

관련 글

더 보기 »