v2.9.0: 设置新增 ZITADEL 统一登录(OIDC Authorization Code+PKCE,身份主键 (issuer,subject),JIT 建号即管理员,docs/12);账号密码 tab 支持修改用户名(验密+重签会话);新增 docs/API.md 全量 API 文档;迁移 0006(oidc_identities/oidc_states)
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
-- ZITADEL 统一登录(v2.9.0):身份绑定 + 一次性授权 state
|
||||
-- 身份主键是 (issuer, subject),email 仅作资料展示、绝不参与判定(实例无 SMTP,邮箱可能缺失)
|
||||
|
||||
-- OIDC 身份绑定:统一登录账号 ↔ 本地 users 的映射(重复登录同一 subject 刷新资料,不报冲突)
|
||||
CREATE TABLE IF NOT EXISTS oidc_identities (
|
||||
id TEXT PRIMARY KEY,
|
||||
issuer TEXT NOT NULL, -- IdP 签发者(如 https://auth.my.qiaonao.net)
|
||||
subject TEXT NOT NULL, -- IdP 的 sub(身份主键的一部分)
|
||||
user_id TEXT NOT NULL, -- 本地 users.id
|
||||
display_name TEXT, -- 展示名(兜底链取值,可为空)
|
||||
email TEXT, -- 纯资料,可为空,永不作为身份键
|
||||
created_at TEXT NOT NULL,
|
||||
updated_at TEXT NOT NULL,
|
||||
UNIQUE(issuer, subject)
|
||||
);
|
||||
CREATE INDEX IF NOT EXISTS idx_oidc_identities_user ON oidc_identities(user_id);
|
||||
|
||||
-- OIDC 一次性 state:承载 code_verifier(PKCE)与回跳路径,用后即删
|
||||
CREATE TABLE IF NOT EXISTS oidc_states (
|
||||
state TEXT PRIMARY KEY,
|
||||
code_verifier TEXT NOT NULL,
|
||||
return_to TEXT NOT NULL,
|
||||
created_at TEXT NOT NULL,
|
||||
expires_at TEXT NOT NULL
|
||||
);
|
||||
Reference in New Issue
Block a user