-- Phase 3.3: 관리자 역할 + RLS 정책 -- profiles.role 컬럼 추가 + admin 전용 SELECT 정책 -- 1. role 컬럼 ALTER TABLE public.profiles ADD COLUMN IF NOT EXISTS role text NOT NULL DEFAULT 'user'; ALTER TABLE public.profiles ADD CONSTRAINT profiles_role_check CHECK (role IN ('user', 'admin')); -- 2. Admin RLS: 모든 profiles 조회 CREATE POLICY "admin_read_all_profiles" ON public.profiles FOR SELECT TO authenticated USING ( EXISTS (SELECT 1 FROM public.profiles p WHERE p.id = auth.uid() AND p.role = 'admin') ); -- 3. Admin RLS: 모든 subscriptions 조회 CREATE POLICY "admin_read_all_subscriptions" ON public.subscriptions FOR SELECT TO authenticated USING ( EXISTS (SELECT 1 FROM public.profiles p WHERE p.id = auth.uid() AND p.role = 'admin') ); -- 4. Admin RLS: 모든 daily_usage 조회 CREATE POLICY "admin_read_all_daily_usage" ON public.daily_usage FOR SELECT TO authenticated USING ( EXISTS (SELECT 1 FROM public.profiles p WHERE p.id = auth.uid() AND p.role = 'admin') );