secrets-policy
Installation
SKILL.md
Навык: Политика ключей (безопасный вынос) — модуль M·MAKE
Главный принцип: ключ не живёт в коде и не пишется в чат. Агент делает пустые заготовки (.env.example), реальные значения человек вставляет сам — в защищённое поле (Supabase secrets / Vercel / поле сервиса), мимо репозитория.
🗺️ Карта «какой ключ куда»
| Ключ | Тип | Куда | Во фронт / в git? |
|---|---|---|---|
| Supabase anon | публичный | фронт .env (VITE_...), Vercel env |
Да — но безопасен только при включённом RLS |
| Supabase service_role | секретный (обходит RLS) | только сервер / Edge Function | Никогда |
| OpenAI key | секретный | только сервер: Edge Function secrets | Никогда |
| прочие (платёжка и т.п.) | секретный | сервер / Edge Function / Vercel Sensitive | Никогда |
Связка «anon key во фронте + RLS выключен» = катастрофа (реальные утечки: Moltbook — 1,5 млн ключей; CVE-2025-48757). Anon-ключ и RLS учим одним блоком.