用途:Keycloak 是开源身份与访问管理(IAM)平台,用于为应用提供统一登录与授权,支持单点登录(SSO)、身份代理与社交登录、用户联邦(LDAP/Active Directory)、OAuth 2.0、OpenID Connect、SAML 2.0 以及细粒度授权,并提供管理控制台和账户管理。
主要能力:可创建与管理 realm、客户端、用户、角色、用户组与客户端作用域;配置浏览器认证流程、双因素(OTP)与自定义认证流程;接入 LDAP 用户联邦与自定义 User Storage SPI;配置 Google、SAML 等身份提供方;通过映射器向令牌写入自定义声明;使用 Admin REST API 管理资源;支持导出/导入 realm、备份数据库与自定义主题。
使用方式:可用 Docker 快速启动,例如 docker run -d --name keycloak -p 8080:8080 -e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=admin quay.io/keycloak/keycloak:latest start-dev;也可配合 PostgreSQL 或 Docker Compose 部署,生产环境需先 build 再以 start 运行并配置 HTTPS 与主机名。管理控制台地址为 http://localhost:8080/admin。应用集成可使用 NextAuth、keycloak-connect、keycloak-js 等客户端库。
适用场景:需要统一身份认证、SSO、社交登录、企业目录联邦、基于角色或细粒度授权的 Web、SPA 与后端服务。
限制:资料未提供具体收费、价格与效果数据;生产部署需自行配置 HTTPS、强客户端密钥、短令牌有效期、刷新令牌轮换、PKCE、CSP、限流、审计日志与定期更新等安全实践。