Docker
推荐的途径。随附的 docker compose 会把中枢和 Postgres 一起启动。
Lockatus 以单个 Docker 镜像加一个 Postgres 数据库的形式交付。它会在首次启动时生成 RS256
签名密钥(以加密形式存储于数据库),并初始化第一个超级管理员——因此一次 docker compose up
就能给你一个可用的身份中枢。
Docker
推荐的途径。随附的 docker compose 会把中枢和 Postgres 一起启动。
一个主密钥
LOCKATUS_SECRET 加密 TOTP 密钥并签署中枢会话。生成 32 个随机字节。
一个可访问的 issuer URL
LOCKATUS_ISSUER 是令牌所携带的公开 URL——它必须能从浏览器和联合应用两端访问到。
git clone https://github.com/diegoparras/lockatus.git && cd lockatuscp .env.example .env # set POSTGRES_PASSWORD and LOCKATUS_SECRETdocker compose up -d --builddocker compose logs lockatus # the generated admin password is printed once here# → http://localhost:8081像这样生成主密钥:
node -e "console.log(require('crypto').randomBytes(32).toString('hex'))"http://localhost:8081,以 LOCKATUS_ADMIN_EMAIL 身份用日志中仅打印一次的密码登录
(或你在 LOCKATUS_ADMIN_PASS 中设置的密码)。| Route | 用途 |
|---|---|
GET /health | 服务健康状态(及数据库状态)。 |
GET /.well-known/openid-configuration | 用于 OIDC 发现的 issuer 元数据。 |
GET /jwks.json | 公钥,供各应用离线校验令牌。 |
| Variable | Default | 说明 |
|---|---|---|
POSTGRES_PASSWORD | (required) | 数据库密码。 |
LOCKATUS_SECRET | (required) | 主密钥——加密 TOTP 密钥并签署中枢会话。 |
LOCKATUS_ISSUER | http://localhost:8081 | 嵌入令牌中的公开 issuer URL。 |
LOCKATUS_ADMIN_EMAIL | admin@lockatus.local | 第一个超级管理员。 |
LOCKATUS_ADMIN_PASS | (empty) | 为空 → 自动生成并在日志中打印一次。 |
LOCKATUS_SECURE_COOKIE | 0 | 在 TLS 之后设为 1。 |
LOCKATUS_PORT | 8081 | 主机端口。 |