自己做登录?OAuth 2.1 和 OIDC 协议能把人绕晕,多租户隔离、RBAC 权限、企业 SSO 这些硬需求更让工期直接翻倍。

Logto 对于身份认证给出了不一样的答案,专为 SaaS 和 AI 应用深度优化。

Logto 核心优势

开箱即用的SaaS多租户能力

Logto 原生内置组织/工作区模型,完美适配SaaS产品架构:

  • 用户单一身份,可灵活访问多个企业/工作区
  • 租户数据、权限、登录策略完全隔离,开箱即用无需二次开发
  • 原生支持企业级SSO(SAML/OIDC协议),无缝对接 Okta、Azure AD、企业内部身份系统

专为AI应用深度优化

区别于传统认证系统,Logto 对 AI 场景极其友好:

  • 原生支持 MCP协议,AI Agent 可安全、合规调用业务API
  • 内置 Secret Vault 密钥托管能力,统一管理第三方令牌
  • 无需反复向用户索要授权,大幅优化AI应用交互体验与安全性

把复杂的企业级身份能力打包好,让你 5 分钟就能部署一套属于自己的认证基础设施。用户数据归自己管,这才是真正的“降本增效”。

快速部署

docker-compose 配置

创建 docker-compose.yml 文件,内容如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
services:
logto:
image: ghcr.io/logto-io/logto:latest # 或 svhd/logto:latest
container_name: logto
restart: always
ports:
- "3001:3001" # 核心服务端口
- "3002:3002" # 管理控制台端口
environment:
# 信任代理(如果前面有 Nginx 反代,设置为 1)
- TRUST_PROXY_HEADER=1
# 替换为你的实际域名(生产环境必须使用 HTTPS 域名)
- ENDPOINT=https://auth.your-domain.com
- ADMIN_ENDPOINT=https://admin.your-domain.com
# 替换为你的 PostgreSQL 连接信息
- DB_URL=postgres://username:password@your-postgres-host:5432/logto_db
# 如果使用 PgBouncer 或 RDS Proxy,取消注释下一行
# - DATABASE_STATEMENT_TIMEOUT=DISABLE_TIMEOUT
# 容器启动时创建表,幂等操作不会重复创建
command: sh -c "npm run cli db seed -- --swe && npm start"
volumes:
# 持久化连接器配置(如短信、邮件、社交登录等)
- ./connectors:/etc/logto/packages/core/connectors

启动服务

1
docker compose up -d

首次启动会自动初始化数据库表结构与索引,等待几秒即可完成初始化。

查看启动日志确认服务正常运行:

1
2
3
4
docker compose logs -f

Core app is running at http://localhost:3001
Admin app is running at http://localhost:3002

访问管理控制台

打开浏览器访问 http://localhost:3002(如果你配置了域名,就用域名访问),点击“创建账户”,用用户名和密码完成注册。

注意:开源版仅在首次启动时允许创建一个管理员账户,后续请妥善保管该账户。

核心环境变量说明

变量名 说明 是否必填
DB_URL PostgreSQL 连接串(DSN 格式) ✅ 必填
ENDPOINT 核心服务的公网 HTTPS 地址 ✅ 必填
ADMIN_ENDPOINT 管理控制台的公网 HTTPS 地址 ✅ 必填
TRUST_PROXY_HEADER 是否信任代理转发的 HTTPS 头(Nginx 等场景设为 1) 推荐
DATABASE_STATEMENT_TIMEOUT 数据库语句超时(毫秒),使用 PgBouncer 时设为 DISABLE_TIMEOUT 按需

3 分钟接入你的第一个应用

服务跑起来后,你可以:

  1. 创建应用:在管理控制台点击 “Applications” → “Create Application”,选择类型(Web、SPA、Native 等)
  2. 获取凭证:记录 App ID 和 App Secret
  3. 配置登录体验:在 “Sign-in Experience” 中设置邮箱/手机号登录、社交登录、MFA 等
  4. 集成 SDK:Logto 提供 30+ 主流框架的 SDK(React、Next.js、Vue、Flutter、Go、Python……),几行代码即可接入

避坑指南

  • 数据丢失:千万不要使用官方快速体验的默认 Compose,必须用独立 PG + 持久化卷。
  • 端口被占用:如果 3001/3002 已被占用,修改 ports 映射为其他端口(如 3003:3001)。
  • 数据库连接不上:如果 PG 在宿主机上,用 host.docker.internal(macOS/Windows)或 172.17.0.1(Linux)代替 localhost
  • 管理控制台登录后空白:检查 ADMIN_ENDPOINT 是否配置正确,以及是否与 ENDPOINT 使用相同域名和 HTTPS。

写在最后

开发最忌讳的,就是把时间浪费在通用底层轮子上。

身份认证、权限体系、企业SSO、AI授权,这些不是你的业务核心,却是最耗时间、最容易出漏洞的模块。

Logto 把所有复杂的协议、隔离逻辑、安全策略、企业适配全部封装完毕。

如果你正在开发 SaaS 系统、AI 应用,强烈建议试一试,把时间留给真正的业务创新。