엔타이틀먼트 모델 (플랜 + 기능)
개념
엔타이틀먼트는 플랜 기반입니다: 구독이 기능 집합을 부여합니다. Auth는 사용자가 "누구"인지 처리하고, Payments는 사용자가 "무엇"에 접근할 수 있는지 처리합니다. 기능을 인증 역할로 게이팅하지 말고 payments.hasFeature로 게이팅하세요.
어디서 설정하나요?
프로젝트 에디터에서 이 기능을 켜고 끌 수 있습니다. 코드는 필요하지 않습니다.
이 기능은 특정 설정 경로 없이 플랫폼 전역에서 작동합니다.
내 프로젝트에서 열기관련 기능
구독 플랜 (Free, Pro, Enterprise 등)
구독 플랜(plan_id, 이름, 가격, 주기)을 Payments에서 정의합니다. AI 도구 definePlans를 사용하거나 플랜 카탈로그를 직접 편집하세요. plan_id를 참조하는 코드를 생성하기 전에 getPlans를 호출해 plan_id의 일관성을 유지하세요.
기능 카탈로그 및 엔타이틀먼트
feature_key(예: unlimited_uploads, advanced_analytics)를 정의하고 플랜별 제한과 함께 할당합니다. 코드는 payments.hasFeature(key)로 UI/로직을 게이팅합니다. 게이팅 코드를 생성하기 전에 getFeatures를 호출해 feature_key의 일관성을 유지하세요.
사용자 역할 및 사용자 정의 클레임
역할(관리자, 고객, 운전자 등)을 정의하고 최종 사용자에게 할당합니다. 역할은 인증 세션의 클레임으로 앱 코드에서 사용할 수 있습니다. Auth → Roles에서 설정합니다.