← 返回信息流
GitHub 热榜GitHub Trending · 日·2 小时前

Logto - 面向 SaaS 和 AI 应用的认证与授权基础设施

原标题:logto-io/logto
TypeScript12,296 stars+77 今日

速览

Logto 是一个开源的身份基础设施,专为 SaaS 和 AI 应用设计,支持多租户、单点登录 (SSO) 和基于角色的访问控制 (RBAC)。它简化了复杂的身份验证流程,帮助开发者快速构建安全且可扩展的用户管理系统。

AI 深度解读

这是什么

Logto 是一款面向现代 SaaS(软件即服务)和 AI 应用的开源身份认证基础设施(Auth Infrastructure)。它基于 TypeScript 构建,旨在简化复杂的 OIDC(OpenID Connect)和 OAuth 2.1 协议实现过程,帮助开发团队快速构建具备生产级安全标准的认证系统。

作为 GitHub 上备受关注的开源项目(Stars 12,000+),Logto 不仅提供了核心的认证能力,还内置了多租户管理、企业级单点登录(SSO)以及基于角色的访问控制(RBAC),是替代 Auth0、Okta 等商业 SaaS 身份提供商的强力开源方案。

解决的问题

在传统应用开发中,身份认证往往是最大的痛点之一。Logto 主要解决以下核心问题:

  1. 协议复杂性:OIDC 和 OAuth 2.1 标准虽然成熟,但实现细节繁琐,容易因配置错误导致安全漏洞。Logto 封装了这些协议,让开发者无需深入底层协议细节即可实现标准认证。
  2. 多租户与组织管理缺失:许多开源认证方案(如 Keycloak)在原生支持多租户(Multi-tenancy)和组织级 RBAC 时配置复杂。Logto 原生支持多租户架构,无需变通方案即可实现企业级隔离。
  3. AI Agent 集成滞后:随着 Model Context Protocol (MCP) 和基于 Agent 的 AI 架构兴起,传统认证方案缺乏对这类新型架构的原生支持。Logto 率先适配了 MCP 和 Agent 架构的认证需求。
  4. 开发效率低下:从零搭建认证系统需要处理用户注册、登录、社交登录、MFA、SSO 等大量逻辑。Logto 提供了预构建的 UI 流程和 SDK,将集成时间从数周缩短至数分钟。

核心功能

  • 标准化协议支持
    • 全面支持 OIDC、OAuth 2.1 和 SAML 协议。
    • 无需处理协议层面的“痛苦”,提供开箱即用的标准接口。
  • 企业级身份管理
    • 多租户(Multi-tenancy):原生支持多组织隔离,适用于 B2B SaaS 场景。
    • 企业 SSO:支持连接 Azure AD、Okta 等主流 IdP(身份提供商)。
    • RBAC(基于角色的访问控制):提供组织级的成员邀请、权限管理和即时配置(Just-in-time provisioning)。
  • 开发者友好的 SDK 与 UI
    • 提供 30+ 主流框架的 SDK,包括 React、Next.js、Angular、Vue、Flutter、Go、Python 等。
    • 预构建的 Sign-in/Sign-up 流程,支持自定义 UI。
    • 支持社交登录(Google、Facebook 等)、Google One Tap、MFA 和多因素认证。
  • AI 原生集成
    • 原生支持 Model Context Protocol (MCP)。
    • 为基于 Agent 的 AI 架构提供专用的认证路径,解决 AI 应用间的信任与授权问题。
  • 灵活的应用接入
    • 支持 SPA(单页应用)、Web 应用、移动应用、API、M2M(机器对机器)通信以及 CLI 工具。

亮点 / 与同类相比

  • 原生 AI/Agent 支持:与 Keycloak、Auth0 等传统方案相比,Logto 是目前少数明确将 Model Context Protocol (MCP) 和 Agent 架构纳入核心支持范围的认证基础设施,契合当前 AI 应用爆发的趋势。
  • 开箱即用的多租户 RBAC:虽然 Keycloak 功能强大,但其多租户配置通常较为复杂。Logto 在设计之初就将多租户和组织管理作为一等公民,配置更直观,更适合现代 SaaS 产品。
  • 轻量级与现代化栈:基于 TypeScript 构建,代码库相对轻量,社区活跃度高。相比重量级的 Java 生态认证方案,Logto 更易于集成到现代前端和后端技术栈中。
  • 开发体验优先:提供 GitPod 一键启动、Docker Compose 快速部署以及清晰的文档,极大降低了本地开发和测试的门槛。

适合谁用 / 上手

适合人群:

  • SaaS 初创团队:需要快速上线具备多租户和企业级认证功能的 B2B 产品,但不想维护复杂的认证服务器。
  • AI 应用开发者:正在构建基于 Agent 或 MCP 协议的 AI 应用,需要处理复杂的身份验证和授权逻辑。
  • 寻求替代商业方案的企业:希望摆脱 Auth0、Okta 等商业 SaaS 的高昂费用和数据锁定,选择自托管的开源方案。

上手指南:

  1. 快速体验(Cloud)
    • 使用 Logto Cloud,零配置,最快体验 Logto 功能。
  2. 本地开发(GitPod)
    • 在 GitPod 中启动 Logto OSS,几秒内即可运行。
    • 等待提示 App is running at https://3002-...gitpod.io,点击该 URL 继续。
  3. 本地开发(Docker)
    • 需要安装 Docker Desktop。
    • 执行命令:
      curl -fsSL https://raw.githubusercontent.com/logto-io/logto/HEAD/docker-compose.yml | \
      docker compose -p logto -f - up
      
  4. 本地开发(Node.js)
    • 需要安装 PostgreSQL。
    • 执行命令:
      npm init @logto
      

对于更详细的安装指南,可参考官方文档中的 Full OSS installation guide。

查看原文 →github.com