Spaces:
Sleeping
Sleeping
| """ | |
| Supabase Admin Client | |
| Provides admin-level access to Supabase for backend operations | |
| """ | |
| from supabase import create_client, Client | |
| from app.config import settings | |
| import logging | |
| logger = logging.getLogger(__name__) | |
| def get_supabase_admin() -> Client: | |
| """ | |
| Get Supabase client with admin privileges (service role key) | |
| This client bypasses Row Level Security (RLS) and has full access. | |
| Use only for admin operations like: | |
| - Password resets | |
| - User management | |
| - Data migrations | |
| Returns: | |
| Client: Supabase client with service role permissions | |
| """ | |
| return create_client( | |
| settings.SUPABASE_URL, | |
| settings.SUPABASE_SERVICE_KEY | |
| ) | |
| # Global admin client instance | |
| supabase_admin = get_supabase_admin() | |