技能 better-auth-best-practices
🔐

better-auth-best-practices

安全

Configurer Better Auth avec les bonnes pratiques

La configuration de l'authentification nécessite de naviguer parmi des options de configuration complexes et des paramètres de sécurité. Cette compétence donne un accès rapide à la référence complète de Better Auth pour la configuration de l'environnement, les adaptateurs de base de données, la gestion des sessions et les configurations de sécurité.

支援: Claude Codex Code(CC)
📊 69 充足
1

下載技能 ZIP

2

在 Claude 中上傳

前往 設定 → 功能 → 技能 → 上傳技能

3

開啟並開始使用

測試它

正在使用「better-auth-best-practices」。 How do I configure Better Auth with Prisma?

預期結果:

  • Environment: BETTER_AUTH_SECRET (32+ chars), BETTER_AUTH_URL
  • Database adapter: Import from 'better-auth/adapters/prisma'
  • Configuration: Pass your Prisma client instance to the database option
  • Schema: Run 'npx @better-auth/cli@latest generate' to create Prisma schema
  • Note: Use model names (e.g., 'user'), not table names in config

正在使用「better-auth-best-practices」。 What are the security settings I should enable?

預期結果:

  • Essential: useSecureCookies (HTTPS only)
  • Rate limiting: enabled with window and max options
  • CSRF: Keep default protection, avoid disableCSRFCheck
  • IP headers: Configure ipAddressHeaders for proxy setups
  • Cookie: Set appropriate expiresIn and updateAge values

安全審計

安全
v1 • 1/23/2026

All 149 static findings are FALSE POSITIVES. This is a documentation-only skill containing markdown reference material. The scanner misinterpreted inline code examples (CLI commands, config snippets) as executable code. No network calls, file system access, or credential handling exists in this skill. Safe for publication.

1
已掃描檔案
166
分析行數
3
發現項
1
審計總數
中風險問題 (3)
External Command Patterns in Documentation
Scanner detected backtick-wrapped code patterns (e.g., `openssl rand`, `npx @better-auth/cli migrate`) and flagged as shell execution. These are inline code examples in markdown documentation, not actual command execution.
Network URL Patterns in Documentation
Scanner detected hardcoded URLs (better-auth.com, GitHub, example.com) as external network calls. These are documentation links, not actual network requests.
Credential Access Patterns in Documentation
Scanner flagged references to authCookies, password.hash(), and similar terms as credential access. These are documentation mentions of authentication concepts.
審計者: claude

品質評分

38
架構
100
可維護性
87
內容
32
社群
90
安全
83
規範符合性

你能建構什麼

Configuration d'un nouveau projet d'authentification

Configurez rapidement Better Auth pour un nouveau projet en récupérant les variables d'environnement, les paramètres d'adaptateur de base de données et les configurations de sécurité.

Revue de configuration de sécurité

Référencez les paramètres de sécurité comme la configuration des cookies, la protection CSRF et la limitation de débit lors de l'audit ou de l'amélioration des implémentations d'authentification existantes.

Recherche d'intégration de plugins

Trouvez les chemins d'importation et les options de configuration corrects pour les plugins populaires comme l'authentification à deux facteurs, les organisations, les passkeys et les liens magiques.

試試這些提示

Aide à la configuration de base
I need to set up Better Auth with {database}. What are the required environment variables and configuration options?
Paramètres de sécurité
How do I configure {security_option} in Better Auth? What are the security implications?
Configuration de plugin
How do I add {plugin_name} plugin to Better Auth? Show me the import path and configuration options.
Gestion des sessions
Explain the difference between cookie cache strategies in Better Auth: compact vs JWT vs JWE. When should I use each?

最佳實務

  • Toujours utiliser des variables d'environnement pour les secrets (BETTER_AUTH_SECRET) au lieu de coder en dur les valeurs
  • Exécuter la commande de migration CLI après l'ajout ou la modification de plugins pour mettre à jour le schéma
  • Utiliser secondaryStorage (Redis/KV) pour les sessions en production pour une meilleure scalabilité
  • Choisir la stratégie de cache de cookies appropriée : compact pour la taille, JWT pour la lisibilité, JWE pour la sécurité maximale

避免

  • Coder en dur les secrets ou identifiants dans les fichiers de configuration
  • Utiliser des noms de tables au lieu des noms de modèles ORM lors de la configuration des adaptateurs
  • Sauter l'étape de migration CLI après les modifications de plugins
  • Désactiver CSRF ou les vérifications d'origine sans comprendre les implications de sécurité

常見問題

Quels adaptateurs de base de données Better Auth prend-il en charge ?
Better Auth prend en charge les connexions directes à PostgreSQL, MySQL, SQLite (incluant bun:sqlite) et MongoDB. Il possède également des adaptateurs officiels pour Prisma, Drizzle et Mongoose.
Comment ajouter des fournisseurs OAuth comme Google ou GitHub ?
Configurez socialProviders dans votre configuration auth avec votre clientId et clientSecret. Importez directement le nom du fournisseur (par exemple google, github) et ajoutez-le au tableau de plugins.
Quelle est la différence entre les stratégies de cache de cookies compact, JWT et JWE ?
Compact utilise Base64url avec HMAC (taille la plus petite). JWT est un JSON Web Token standard (lisible mais signé). JWE est un JWT chiffré (sécurité maximale, taille plus grande). Choisissez selon vos exigences de sécurité et de taille.
Comment implémenter l'authentification à deux facteurs ?
Ajoutez le plugin twoFactor depuis 'better-auth/plugins/two-factor'. Configurez-le avec emailAndPassword activé. Les utilisateurs peuvent ensuite configurer des authentificateurs TOTP via le flux d'authentification.
Où dois-je stocker les données de session ?
Configurez secondaryStorage avec Redis ou un store KV pour la production. Les sessions vont dans secondaryStorage par défaut. Définissez session.storeSessionInDatabase pour également persister dans votre base de données. Le mode stateless fonctionne sans base de données lorsque vous utilisez cookieCache.
Comment invalider toutes les sessions utilisateur ?
Modifiez la valeur session.cookieCache.version dans votre configuration. Cela force toutes les sessions existantes à se revalider et déconnecte effectivement tous les utilisateurs.

開發者詳情

檔案結構

📄 SKILL.md