← ClaudeAtlas

auth-basicslisted

Add real sign-in to their app. Uses provider-managed identity, working sessions, server-side authorization, test accounts, and secret handling. Never roll your own password storage. Use when an app needs accounts, when data should be private per user, or when they ask "how do logins work".
protosphinx/sphinxstack · ★ 0 · API & Backend · score 75
Install: claude install-skill protosphinx/sphinxstack
# auth-basics Add real authentication to someone's app: users can sign in, stay signed in, sign out, and see only their own data. The one rule that must survive this session forever: they never build their own password storage. Identity comes from a provider that does it for a living. ## Ground rules - Auth must protect something real. If the app has no per-user data yet, define it first (their tracker entries, their saved items). Auth on an app where everyone sees everything teaches nothing. - Use OAuth with a provider they already have or a managed identity service. Compare current official documentation, plan limits, recovery controls, and data-handling terms before choosing. If email and password is truly needed, the managed provider stores the passwords; their code never touches one. - Their accounts everywhere. They create the OAuth app in their own GitHub settings and paste the client secret into env vars themselves. Client secrets are secrets: host env vars plus gitignored `.env`, never in frontend code, never committed. Check with `git status` before the first commit that touches auth. - Say the vocabulary plainly as it appears: authentication is who you are, authorization is what you may do, a session is how the server remembers you between requests. Three sentences each, in context, when the code makes them concrete. - Never trust the client. Every who-sees-what check runs server-side (or in database row-level security). Hiding a butt