概述
Keycloak 提供开箱即用的身份与访问管理,支持 OIDC/SAML 与社交登录。本文提供 Realm/Client 配置、IdP 集成与角色权限、令牌映射与验证方法。
基本配置(已验证)
- Realm:按环境或租户划分;
- Client:为应用创建 OIDC 客户端,配置
redirect_uri精确匹配; - 角色与权限:使用角色映射到应用权限模型。
身份源集成
- OIDC:配置 IdP 的
issuer、client_id/secret; - SAML:导入 IdP 元数据并配置断言与签名;
- 映射:将 IdP 的属性映射到本地用户与角色。
令牌与安全
- 令牌映射:在
Protocol Mappers中设置roles/scope与自定义声明; - 会话策略:令牌 TTL、旋转与撤销;
- 安全:启用
https与SameSiteCookie、限制public client使用场景。
示例(片段)
realm: corp
client: web-app (confidential)
redirect_uri: https://app.example.com/callback
idp: enterprise-oidc (issuer=https://idp.example.com)
验证与监控
- 登录成功率、失败原因(重定向/nonce/state 校验失败);
- 令牌旋转与撤销事件;
- 审计:管理员与用户操作记录。
常见误区
redirect_uri使用通配符导致风险与失败;- 未配置
Protocol Mappers导致令牌信息缺失; - 无审计与撤销通道。
结语
以 Realm/Client 与 IdP 集成为基础,结合角色权限与令牌映射,并以会话策略与审计验证,Keycloak 能实现安全可控的企业级 SSO。

发表评论 取消回复