MaxKey:业界领先的IAM-IDaas身份管理和认证产品
1. 项目背景 🔐
在数字化转型浪潮中,企业系统越来越多——OA、ERP、CRM、HR、财务……员工每天要记住十几套账号密码,IT 部门被"忘记密码"的工单淹没。据 Forrester 研究,企业因密码重置每年平均损失每位员工 70 小时。单点登录(SSO)已成为企业 IT 基础设施的刚需。
MaxKey 应运而生,由国内 Dromara 开源社区开发维护,是国内领先的 IAM-IDaaS 身份管理平台。
项目是什么
DromaraMaxKey单点登录认证系统是业界领先的IAM-IDaas身份管理和认证产品,谐音为马克思的钥匙,寓意它能够像一把万能钥匙(最大钥匙)一样,解锁复杂的企业安全需求,提供简洁而高效的解决方案。产品支持OAuth 2.x/OpenID Connect、SAML 2.0、JWT、CAS、SCIM等标准协议,提供安全、标准和开放的用户身份管理(IDM)、身份认证(AM)、单点登录(SSO)、RBAC权限管理和资源管理等。
2. 目标用户 👥
企业 IT 管理员:需要统一认证平台,管理多系统登录和权限
安全合规负责人:需要符合等保 2.0 要求的身份认证方案
Java 后端开发者:需要在项目中集成 SSO/OAuth2/SAML 等认证协议
中大型企业架构师:规划统一身份管理基础设施,替代分散的认证方案
政企单位:对数据合规、自主可控有严格要求的组织
3. 平台定位 🎯
MaxKey 定位为业界领先的开源 IAM-IDaaS 身份管理和认证产品。与商业方案(如 Okta、Azure AD)相比,MaxKey 的核心优势在于:
开源免费、安全合规、自主可控,完全适配国内政企信创环境。
它覆盖了身份管理的完整生命周期——从用户注册、认证、授权到注销、审计,提供一站式解决方案。基于 RBAC 统一权限模型,实现"一个身份,通行所有系统"。
4. 平台技术 🛠️
核心框架:Java + Spring Boot,成熟的微服务架构
数据库:支持 MySQL、PostgreSQL、Oracle、达梦、人大金仓
认证协议:全面支持 OAuth2.x、OpenID Connect、SAML 2.0、CAS、JWT、SCIM
权限模型:基于 RBAC 的统一权限控制,支持数据权限和 API 权限
部署方式:支持 Docker 容器化部署,适配 Kubernetes 集群
信创适配:支持国产操作系统(麒麟、统信)和国产数据库
密码策略:支持国密算法(SM2/SM3/SM4),满足密评要求
5. 核心功能 🔥
① 多协议单点登录
MaxKey 支持几乎所有主流 SSO 协议,企业无需改造现有系统即可接入:
支持的认证协议: ├── OAuth2.x —— 授权码模式、密码模式、客户端模式 ├── OpenID Connect —— 基于 OAuth2 的身份层扩展 ├── SAML 2.0 —— 企业级联邦认证,适合大型组织 ├── CAS —— 经典中央认证服务协议 ├── JWT —— 无状态 Token 认证 └── SCIM —— 用户信息同步标准协议② 统一身份管理
用户生命周期管理:入职→在职→调岗→离职,全流程自动化
组织架构管理:部门、岗位、角色灵活定义,支持多级树形结构
多租户支持:一套系统服务多个业务单元,数据完全隔离
③ 细粒度权限控制
基于 RBAC 模型实现三级权限控制:
// MaxKey RBAC 权限模型 用户(User) ──关联──▶ 角色(Role) ──关联──▶ 权限(Permission) ├── 菜单权限 ├── 数据权限 └── API 权限④ 安全审计
全链路日志:记录登录、授权、变更等所有操作
异常检测:异地登录、暴力破解、异常时间段访问告警
密码策略:复杂度检查、有效期管理、历史密码复用限制
6. 独特优势 💎
协议覆盖最全:同时支持 OAuth2/OIDC/SAML/CAS/JWT/SCIM,市面开源项目中协议最全
国密算法支持:内置 SM2/SM3/SM4 国密算法,满足政企等保和密评要求
信创生态适配:适配麒麟、统信操作系统,达梦、人大金仓数据库
Apache-2.0 开源协议:商业项目可自由使用,无 GPL 传染性风险
Dromara 社区加持:Dromara 是国内最活跃的开源社区之一,社区响应及时
6 年持续维护:2019 年至今持续迭代,版本稳定可靠
7. 安装使用 🚀
Docker 快速部署(推荐):
# 1. 克隆项目 git clone https://gitee.com/dromara/MaxKey.git cd MaxKey # 2. 使用 Docker Compose 启动 docker-compose up -d # 3. 访问管理后台 # 浏览器打开:http://localhost:9527 # 默认账号:admin / 123456Spring Boot 应用集成 MaxKey 认证:
// 在你的 Spring Boot 项目中集成 MaxKey OAuth2 登录 @Configuration publicclass SecurityConfig { @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { return http .oauth2Login(oauth2 -> oauth2 .loginPage("/login") .defaultSuccessUrl("/dashboard") ) .authorizeHttpRequests(auth -> auth .requestMatchers("/public/**").permitAll() .anyRequest().authenticated() ) .build(); } } // application.yml 配置 MaxKey 为认证服务器 spring: security: oauth2: client: registration: maxkey: client-id: your-client-id client-secret: your-client-secret authorization-grant-type: authorization_code redirect-uri: "{baseUrl}/login/oauth2/code/maxkey" provider: maxkey: authorization-uri: http://maxkey-server.com/authz/oauth/v20/authorize token-uri: http://maxkey-server.com/authz/oauth/v20/token user-info-uri: http://maxkey-server.com/authz/oauth/v20/userinfo接入第三方应用(以 WordPress 为例):
在 MaxKey 管理后台创建应用
选择 OAuth2 协议,配置回调地址
获取 Client ID 和 Client Secret
在 WordPress 安装 OAuth 插件,填入配置
用户即可通过 MaxKey 统一登录 WordPress
8. 应用场景 🌍
集团企业统一认证:多子公司、多系统统一身份管理,员工一套账号通行全集团
政务云平台:对接政务各委办局系统,实现跨部门统一认证,满足等保 2.0 要求
高校数字化校园:教务、学工、图书馆、宿舍等多系统统一登录入口
医院信息系统集成:HIS、EMR、LIS、PACS 等系统统一认证,医生一次登录即可
SaaS 多租户平台:为不同客户提供独立身份域,数据隔离,支持客户自定义认证策略
信创替代项目:替代 Okta/Azure AD 等国外产品,实现身份管理自主可控
总结
MaxKey 用6 年深耕 + 13,000+ Star证明了它在身份认证领域的实力。对于需要统一认证平台、追求安全合规、同时不想被商业授权绑定的团队来说,MaxKey 是国内开源 IAM 方案中的首选。特别是在信创大背景下,支持国密算法和国产软硬件生态的 MaxKey,为政企客户提供了真正"自主可控"的选择。
项目地址:https://gitee.com/dromara/MaxKey