Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Authentik

了解如何配置 LibreChat 以使用 Authentik 进行用户身份验证。

  1. 访问 Authentik 管理界面:
  • 在浏览器中打开 Authentik 管理界面。通常可以在类似以下的 URL 找到:https://authentik.example.com/if/admin/#/administration/overview

    我们将使用 https://authentik.example.com 作为示例 URL。请将其替换为您 Authentik 实例的 URL。

  1. 使用向导创建新的 Application 和 Provider:
  • 点击左侧边栏中的 Applications 选项卡,然后再次点击 Applications。
  • 在页面顶部,你应该能看到一个写着 Create with Wizard 的按钮。点击它。

    注意:您也可以手动创建应用程序和提供程序,只需确保之后将它们关联起来即可。

  • 您可以随意为该应用程序命名。在本示例中,我们将它命名为 LibreChat 并点击下一步。
  • 选择 OAuth2/OIDC 提供商并点击下一步。
  • 选择您的身份验证和授权流程。
  • 向下滚动并记下 Client IDClient Secret。稍后您将需要用到它们。
  • 在 Advanced protocol settings 下,将 Subject mode 更改为 Based on the User's Email
  • 点击 Submit。
  • 将您创建的新应用程序添加到 Outpost。

    注意:此时您还应该应用任何您想要对 LibreChat 实施的访问控制策略。

  1. 收集 .env 所需信息:
  • 您将需要从 Authentik 获取以下信息:
    • Client ID
    • Client Secret
    • OpenID Configuration URL

      所有这些都可以通过点击您刚刚创建的提供商找到。

  1. 配置 LibreChat:
  • 打开 .env 文件并添加以下变量:
OPENID_ISSUER=https://authentik.example.com/application/o/librechat/.well-known/openid-configuration
OPENID_CLIENT_ID=[YourClientID]
OPENID_CLIENT_SECRET=[YourClientSecret]
OPENID_SESSION_SECRET=[JustGenerateARandomSessionSecret]
OPENID_CALLBACK_URL=/oauth/openid/callback
OPENID_SCOPE=openid profile email
# Optional customization below
OPENID_BUTTON_LABEL=Login with Authentik
OPENID_IMAGE_URL=https://cdn.jsdelivr.net/gh/selfhst/icons/png/authentik.png
# Generate nonce for federated identity providers that require it, i.e. Cognito configured with Entra as an OIDC provider.
OPENID_GENERATE_NONCE=true
# Redirects the user to the end session endpoint after logging out
OPENID_USE_END_SESSION_ENDPOINT=true

# Maximum logout URL length before using logout_hint instead of id_token_hint (default: 2000)
# OPENID_MAX_LOGOUT_URL_LENGTH=2000

注意:请确保 .env 中的内容没有被引号包裹,并且你已经启用了社交登录。

  1. 检查配置:
  • 重启 LibreChat 以应用更改。
  • 打开一个无痕窗口并导航至您的 LibreChat 实例。
  • 在表单登录下方应该有一个显示为 Login with Authentik 的新按钮。
  • 你应该会被重定向到 Authentik 进行登录。
  • 登录后,您应该会被重定向回 LibreChat 并完成登录。
    • 如果未能自动重定向回 LibreChat,请检查 Authentik 日志以查看是否有任何错误。

这篇指南怎么样?