Logto —— 一款面向 SaaS 和 AI 应用的现代化开源认证基础设施。
Logto是一款面向SaaS和AI应用的开源认证基础设施,简化了OIDC和OAuth 2.1的复杂认证流程。它提供多租户支持、企业单点登录和基于角色的访问控制,内置30+框架SDK和30+身份提供商连接器,支持多种应用类型和协议。Logto提供云端托管服务、GitPod快速启动和本地开发部署方案,帮助开发者快速构建安全可靠的认证系统。其特点包括预构建登录流程、可定制UI、全协议支持以及AI架构适配
Logto 是一款面向 SaaS 和 AI 应用的现代化开源认证基础设施。
Github: https://github.com/logto-io/logto
Website: https://logto.io/
它消除了 OIDC 和 OAuth 2.1 所带来的困扰,使构建具有多租户、企业级单点登录和基于角色的访问控制的高安全性、可生产化的认证变得十分简便。
为何选择 Logto?
专为需要扩展 SaaS、人工智能和基于代理的平台的团队而设计,无需应对常见的授权难题。
使用 Logto,您将获得:
- 多租户、企业单点登录和基于角色的访问控制:即用即行,无需任何变通方法。
- 预构建的登录流程、可定制的用户界面以及适用于 30 多种框架的 SDK。
- 完全支持 OIDC、OAuth 2.1 和 SAML,无需处理协议相关问题。
- 可直接用于模型上下文协议和基于代理的人工智能架构。
开始创建
-
Logto Cloud:体验 Logto 的最快方式。全面托管,无需任何设置
-
Launch Logto in GitPod: 只需几秒钟即可启动 Logto OSS。
请等待消息应用程序在 https://3002-…gitpod.io 运行起来,然后点击以 https://3002- 开头的 URL 来继续操作。 -
Local development:
# Using Docker Compose(requires Docker Desktop)
curl -fsSL https://raw.githubusercontent.com/logto-io/logto/HEAD/docker-compose.yml | \
docker compose -p logto -f - up
# Using Node.js (requires PostgreSQL)
npm init @logto
📚 Full OSS installation guide →
随时随地整合
Logto 支持您所有的应用程序、API 和服务,并采用行业标准协议进行连接。
- 适用于 30 多种框架的 SDK:React、Next.js、Angular、Vue、Flutter、Go、Python 等等。
- 可连接任何身份提供商:谷歌、脸书、Azure AD、Okta 等等。
- 灵活的集成方式:单页应用程序、网页应用、移动应用、API、设备到设备通信、命令行工具。
- 支持模型上下文协议和基于代理的架构。
🚀 Explore quick starts →
🔌 See all connectors →
架构规划
为了在设计中建立最佳实践并规划你的架构,需要从不同的角度考虑你的需求。关注最终目标和工作流程,而不仅仅是底层技术和功能。以下是一些关键问题,可以指导和激励你为你的产品构建理想的架构。
你的商业模式是什么,涉及哪些关键方和利益相关者?
通常,有两种主要的商业模式,B2C 和 B2B,每种模式在复杂的身份管理场景中涉及不同的参与方。了解这些关键利益相关者有助于你设计出以用户为中心的系统,并解决身份管理的各个方面。
B2C
在 B2C 应用中,身份管理通常比较简单,通常只涉及两个参与方。
开发者(你)
这指的是 Logto 控制台管理员和协作者——通常是你和你的开发团队——管理和保护用户身份池,并直接与身份数据库交互。你可以直接在 Logto 控制台中管理客户身份,或使用 Logto Management API 进行自定义开发。
你的消费者
你的消费者是存储在 Logto 核心服务和数据库中的用户身份。在 B2C 模型中,消费者可以管理自己的认证 (Authentication) 和个人信息。
B2B
在 B2B 应用中,这种架构中引入了另一个层次和上下文。业务单元所有者(或组织)控制谁可以访问他们的实例、如何认证 (Authentication) 以及他们可以做什么。组织管理访问其实例的所有终端用户的身份。
开发者(你)
这仍然指的是 Logto 控制台管理员和协作者。虽然组织管理员可以管理身份,但开发者仍然可以直接在 Logto 控制台中管理客户身份,或通过使用 Logto Management API 进行自定义开发。
你的客户(组织管理员)
你的客户是代表多租户应用中“组织”的业务单元,例如 Slack 或 Notion 中的 工作区。每个工作区通常有多个角色和一个或多个管理员来管理员工或用户。在以下内容中,我们将能够管理成员身份的人称为“组织管理员”。
你的客户的员工、合作伙伴或消费者
这些是终端用户身份,在组织上下文中称为“成员”,可以在组织内进行管理。虽然这些身份由组织分隔,但它们都聚合在一个单一的身份系统下。
在现实场景中,从产品角度来看,这些可能是公司员工、业务合作伙伴,甚至是与组织相关的消费者。
其他
其他模型,如 B2B2C,可能由于其复杂性而从这两者中产生。然而,方法保持不变:所有变化都源于相同的核心基础。
构建B2C 服务的单租户架构
架构
在消费者应用程序中,用户完全拥有他们的账户并控制他们的身份和认证 (Authentication),没有来自其他“中间层”方(如企业或组织)的参与。这是 B2C 和 B2B 身份架构之间的关键区别。
构建你的 B2C 身份系统
将你的需求与 Logto 的支持工具包连接
此架构包括两个主要参与管理场景的方。根据你的具体需求和目标,所有或仅部分这些方可能会参与其中。
我们总结了常见的用例,突出每个用户身份管理任务的关键目标以及我们提供的相关产品和 API。你可以将你的需求映射到我们的服务,以快速开始。
| 用户 | 目标 | Logto 产品和 API |
|---|---|---|
| 开发者 | 管理和保护用户身份系统,并直接与身份数据库交互。 | |
| 终端用户 / 消费者 | 管理他们自己的认证 (Authentication) 和个人信息。 |
构建B2B 服务的多租户架构
架构
B2B 应用通常使用多租户架构。在这些应用中,用户拥有他们的账户并管理他们的身份和认证 (Authentication),同时涉及其他方,如企业或组织。终端用户身份通常不是个人消费者,而是企业组织内的员工或合作者。
B2B 功能
将你的需求与 Logto 的支持工具包连接
此架构包括管理场景中涉及的三个主要方。根据你的具体需求和目标,可能涉及所有或仅部分这些方。
我们总结了常见的用例,突出每个用户管理任务的关键目标以及我们提供的相关产品和 API。你可以将你的需求映射到我们的服务,以快速开始。
| 用户 | 目标 | Logto 产品和 API |
|---|---|---|
| 开发者 | 管理和保护用户身份池,并直接与身份数据库交互。 | |
| 组织管理员 | 自助组织管理与自定义功能,给予组织管理员对身份管理的完全控制。 |
|
| 终端用户/组织成员 | 管理他们自己的系统级认证 (Authentication) 和个人信息。 |
更多推荐


所有评论(0)