用 Logto 简化 Outline 身份验证
本文将演示如何使用 Logto 作为 Outline 的 OpenID Connect (OIDC) 身份提供者。
介绍
- Logto 是一个无缝的身份解决方案,具备所有你需要的功能。它支持各种登录方法,包括用户名、电子邮件、电话号码以及 Google 和 GitHub 等流行的社交登录。
- Outline 是为成长型团队提供的知识库。
最棒的是,Logto 和 Outline 都是开源的。本文将演示如何使用 Logto 作为 OpenID Connect (OIDC) 身份提供者为 Outline 提供支持。
准备工作
开始之前,请确保准备好以下内容:
- 一个正在运行的 Logto 实例或 Logto Cloud 账户。
- 一个可以访问环境变量的 Outline 托管环境。
配置 Logto
如果你是自托管的 Logto,请参考 Logto 的"入门"文档来设置你的 Logto 实例。
如果你使用 Logto Cloud,输入 URL https://cloud.logto.io/
打开 Logto 控制台,或输入你为自托管设置的端点。
接下来,导航到“应用程序”选项卡,点击“创建应用程序 ”。
在弹出的窗口中,选择“传统 Web”,然后提供一个应用程序名称,比如“Outline”。然后点击“创建应用程序”。
你将被引导至 Logto 的教程页面。点击右上角的“跳过”按钮,进入应用程序详情页面。
在“重定向 URI”部分,输入以下值:
例如,如果你在 http://localhost:3000
上托管 Outline,值应为:
点击底部的“保存更改”按钮。成功后,保持该页面打开,因为它对 Outline 的配置很有用。
配置 Outline
按照 Outline 托管指南 中的步骤进行操作,直到到达身份验证配置步骤。由于 Outline 默认支持与 OIDC 兼容的身份验证提供者,你可以在 Logto 应用程序详情页面上轻松找到大部分所需的配置值。
请参考下表获取必要的配置信息:
Outline 环境变量 | Logto 显示名称 |
---|---|
OIDC_CLIENT_ID | 应用程序 ID |
OIDC_CLIENT_SECRET | 应用程序密钥 |
OIDC_AUTH_URI | 授权端点 |
OIDC_TOKEN_URI | 令牌端点 |
OIDC_USERINFO_URI | 用户信息端点 |
下表包含了其他变量:
Outline 环境变量 | 描述 |
---|---|
OIDC_USERNAME_CLAIM | 设置为 username |
OIDC_DISPLAY_NAME | 可选 - 根据需要自定义 |
OIDC_SCOPES | 保持默认;不需要设置 |
自托管:在 Logto 中配置电子邮件登录
由于 Outline 要求提供用户的电子邮件,你需要配置电子邮件登录或能够提供可信电子邮件地址的社交登录,如 Google 登录。
参见 配置连接器 了解有关在 Logto 中配置连接器的更多信息。
检查点:测试 Logto 和 Outline 集成
启动 Outline 实例并访问其端点。你应该在中间看到一个标签为“继续使用 OpenID Connect”的按钮;它可以通过设置 OIDC_DISPLAY_NAME
环境变量自定义。
点击按钮,你将被引导至 Logto 登录体验。
如果一切配置正确,当你在 Logto 完成登录或注册过程后,将被重定向回 Outline。然后你可以在页面左下角看到你的个人信息显示。
如果在集成过程中遇到任何问题,请随时通过电子邮件 [email protected] 联系我们或 加入我们的 Discord 服务器!