Logo
RavenSaaS Docs

登录鉴权

鉴权概述

RavenSaaS 目前支持 谷歌登录 / 谷歌一键登录 / Github 登录三种登录方式。

其他登录方式逐步集成,也可以参考 next-auth 文档自行接入。

谷歌登录

支持传统的谷歌OAuth登录流程,安全可靠。

谷歌一键登录

谷歌一键登录,提供更便捷的用户体验。

Github 登录

面向开发者的Github OAuth登录集成。

生成 Auth Secret

在终端运行以下命令生成一个 32 字节的随机字符串,作为 Auth Secret:

Terminal
1openssl rand -base64 32

修改环境变量中的 AUTH_SECRET 值:

.env.development
1NEXTAUTH_SECRET = "xxx"

谷歌登录

1. 创建 OAuth Client ID

登录 Google Cloud Console,创建一个新项目,进入新项目的 Credentials 管理页面,创建 Oauth Client ID。

Google Console

2. 配置回调地址

根据你项目的运行端口,线上域名,配置必要的回调信息:

本地调试配置

callbackUrl
1http://localhost:3000/api/auth/callback/google

线上配置

callbackUrl
1https://{your-domain}/api/auth/callback/google
Google Client ID

3. 配置环境变量

创建 Oauth Client ID 后,得到 Client ID 和 Client Secret,修改配置文件中的相关变量:

.env.development
1AUTH_GOOGLE_ID = "5292xxx-xxx.apps.googleusercontent.com"
2AUTH_GOOGLE_SECRET = "GOxxx"
3
4NEXT_PUBLIC_AUTH_GOOGLE_ENABLED = "true"

谷歌一键登录

首先按照谷歌登录的步骤,拿到 AUTH_GOOGLE_ID 和 AUTH_GOOGLE_SECRET。

开启谷歌一键登录

修改配置文件中的相关变量:

.env.development
1NEXT_PUBLIC_AUTH_GOOGLE_ONE_TAP_ENABLED = "true"
2NEXT_PUBLIC_AUTH_GOOGLE_ID = "5292xxx-xxx.apps.googleusercontent.com"

谷歌一键登录使用到的 NEXT_PUBLIC_AUTH_GOOGLE_ID 跟谷歌登录配置的 AUTH_GOOGLE_ID 保持一致。

Github 登录

1. 创建 OAuth App

进入 Github Developer Settings,创建一个新的 OAuth app。

2. 填写 OAuth app 配置信息

配置回调地址:

callbackUrl
1http://localhost:3000/api/auth/callback/github
Github Callback

开发环境和生产环境,需要创建两个不同的 OAuth app,分别配置不同的回调地址。

3. 配置环境变量

进入 OAuth app,复制 Client ID 和 Client Secret,修改配置文件:

.env.development
1AUTH_GITHUB_ID = "xxx"
2AUTH_GITHUB_SECRET = "xxx"
3NEXT_PUBLIC_AUTH_GITHUB_ENABLED = "true"

登录预览

1. 跳转登录

点击登录按钮,跳转到登录页面:

Login Preview

2. 一键登录提示

用户进入首页,提示一键登录:

Google One Tap

参考

NextAuth.js

NextAuth.js 官方文档

查看文档

Github Oauth

Github Oauth 配置文档

查看文档

Last updated on 2025年1月5日