lobehub/docs/Deployment/Authentication.zh-CN.md
Arvin Xu 81d2d76dda
🐛 fix: fix OAuth throws an error on Vercel deploy (#1278)
* 🐛 fix(oauth): fix OAuth throws an error on Vercel deploy (#1277)

* 🐛 fix(oauth): OAuth throws an error (#1274)

* 🐛 fix(oauth): "ikm" argument must be of type string or an instance of SecretKeyObject

* 📝 docs: Update Auth0 callback URLs in deployment docs

The documentation for both the English and Chinese versions of the
Authentication setup has been updated to include instructions on
configuring the Allowed Callback URLs for Auth0. This step is crucial
for ensuring that the authentication process works correctly after
deployment. The notes added emphasize the importance of keeping the
callback URLs consistent with the deployed service's URLs.

* 📝 docs(oauth): Fix wiki documents

* 🐛 fix: only add auth layout when enabled

---------

Co-authored-by: 小云丨Arale <30863298+CloudPassenger@users.noreply.github.com>
2024-02-09 16:55:55 +08:00

5 KiB
Raw Blame History

身份验证服务

LobeChat 支持配置外部身份验证服务,供企业 / 组织内部使用,统一管理用户授权,目前支持 Auth0,本文将介绍如何配置身份验证服务。

TOC

创建 Auth0 应用

注册并登录 Auth0点击左侧导航栏的「Applications」切换到应用管理界面点击右上角「Create Application」以创建应用。

填写你想向组织用户显示的应用名称可选择任意应用类型点击「Create」。

创建成功后点击相应的应用进入应用详情页切换到「Settings」标签页就可以看到相应的配置信息

在应用配置页面中,还需要配置 Allowed Callback URLs在此处填写 http(s)://<your-domain>/api/auth/callback/auth0

[!NOTE]

可以在部署后再填写或修改 Allowed Callback URLs但是务必保证填写的 URL 与部署的 URL 一致

新增用户

点击左侧导航栏的「Users Management」进入用户管理界面可以为你的组织新建用户用以登录 LobeChat

配置环境变量

在部署 LobeChat 时,你需要配置以下环境变量:

环境变量 类型 描述 默认值 示例
ENABLE_OAUTH_SSO 必选 为 LobeChat 启用单点登录 (SSO)。设置为 1 以启用单点登录。 - 1
NEXTAUTH_SECRET 必选 用于加密 Auth.js 会话令牌的密钥。您可以使用以下命令生成秘钥: openssl rand -base64 32 - Tfhi2t2pelSMEA8eaV61KaqPNEndFFdMIxDaJnS1CUI=
AUTH0_CLIENT_ID 必选 Auth0 应用程序的 Client ID - evCnOJP1UX8FMnXR9Xkj5t0NyFn5p70P
AUTH0_CLIENT_SECRET 必选 Auth0 应用程序的 Client Secret - wnX7UbZg85ZUzF6ioxPLnJVEQa1Elbs7aqBUSF16xleBS5AdkVfASS49-fQIC8Rm
AUTH0_ISSUER 必选 Auth0 应用程序的 Domain - https://example.auth0.com
ACCESS_CODE 必选 添加访问此服务的密码,你可以设置一个足够长的随机密码以 “禁用” 访问码授权 - awCT74e3@09! or code1,code2,code3

[!NOTE]

部署成功后,用户将可以使用 Auth0 中配置的用户通过身份认证并使用 LobeChat。

进阶 - 连接现有的单点登录服务

如果你的企业或组织已有现有的统一身份认证设施,可在 Applications -> SSO Integrations 中,连接现有的单点登录服务。

Auth0 支持 Azure Active Directory, Slack, Google Workspace, Office 365, Zoom 等单点登录服务,详细支持列表可参考 这里

进阶 - 配置社交登录

如果你的企业或组织需要支持外部人员登录,可以在 Authentication -> Social 中,配置社交登录服务。

[!NOTE]

配置社交登录服务默认会允许所有人通过认证,这可能会导致 LobeChat 被外部人员滥用。如果你需要限制登录人员,务必配置阻止策略

请在打开社交登录选项后,参考 这篇文章 创建 Action 来设置阻止 / 允许 列表