iconDirEasy

认证系统

如何在DirEasy应用中管理登录和注册功能。

DirEasy使用BetterAuth来管理认证系统,支持邮箱/密码、GitHub和Google认证方式。

使用邮箱登录无需额外设置,如需启用其他登录方式,请按照以下步骤进行配置。

配置指南

生成 BETTER_AUTH_SECRET 变量

BETTER_AUTH_SECRET 是一个随机值,可以通过以下命令生成:

终端
npx auth secret
# 或
openssl rand -base64 32

然后将其设置到 .env 文件中。

.env
BETTER_AUTH_SECRET=

[可选] 获取Google客户端变量

如需使用Google作为OAuth提供商,需要更新 GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRET 变量。

可以从Google云控制台获取client_id和client_secret。

回调URL应为https://your-domain.com/api/auth/callback/google,本地开发时为http://localhost:3000/api/auth/callback/google

.env
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
# 设置为true以启用Google OAuth登录
NEXT_PUBLIC_ENABLE_GOOGLE_OAUTH=true

[可选] 获取GitHub客户端变量

如需使用GitHub作为OAuth提供商,需要更新 GITHUB_CLIENT_IDGITHUB_CLIENT_SECRET 变量。

按照此指南GitHub开发者设置获取client_id和client_secret。

回调URL应为https://your-domain.com/api/auth/callback/github,本地开发时为http://localhost:3000/api/auth/callback/github

.env
GITHUB_CLIENT_ID=your_github_client_id
GITHUB_CLIENT_SECRET=your_github_client_secret
# 设置为true以启用GitHub OAuth登录
NEXT_PUBLIC_ENABLE_GITHUB_OAUTH=true

请注意开发环境和生产环境的环境变量是不同的,请确保为生产环境和开发环境创建两个不同的OAuth应用。

目录