feat: add better-auth api-key plugin, import endpoint, and API key UI

This commit is contained in:
2026-06-28 05:30:48 +08:00
parent c4bede20d4
commit f7eda2bfc0
15 changed files with 3701 additions and 3 deletions
+14
View File
@@ -2,6 +2,7 @@ import { betterAuth } from 'better-auth'
import { admin, captcha, emailOTP, lastLoginMethod } from 'better-auth/plugins'
import { passkey } from '@better-auth/passkey'
import { expo } from '@better-auth/expo'
import { apiKey } from '@better-auth/api-key'
import { drizzleAdapter } from '@better-auth/drizzle-adapter'
import { db } from '@/lib/db/index'
import { ac, admin as adminRole, moderator, contributor, user } from '@/lib/auth/permissions'
@@ -72,6 +73,19 @@ export const auth = betterAuth({
defaultRole: 'user',
adminRoles: ['admin'],
}),
apiKey({
defaultPrefix: 'dv_',
requireName: true,
keyExpiration: {
defaultExpiresIn: null,
disableCustomExpiresTime: false,
},
rateLimit: {
enabled: true,
timeWindow: 1000 * 60 * 60, // 1 hour
maxRequests: 1000,
},
}),
expo(),
],
socialProviders: {