Skip to content

架构总览

IAM 不是一个独立身份服务器,而是一组可嵌入的 Spring Boot 模块。理解分层,才能知道哪一层该由宿主实现、哪一层由 starter 提供。

模块 职责
核心模型 muer-core 定义 IamPrincipalResourceDescriptorResourceScope 等模型与端口(如 ResourceHierarchyProvider
认证 muer-authentication IdentityAuthenticatorLoginRequestAuthenticationResult、Profile 切换
授权 muer-authorization AuthorizationEngineAuthorizationRequestAuthorizationDecisionAuthorizationProfilePermissionTemplateVersion
会话 muer-session AuthSessionTokenRecord 及其生命周期
持久化 muer-persistence-mybatis Schema 迁移与数据访问
诊断 muer-diagnostics 复用同一引擎的授权诊断
管理 Web muer-management-web 登录、Session、Profile、诊断等 HTTP 端点(见 OpenAPI
自动装配 muer-spring-boot-autoconfigure Bearer Filter、RequirePermission 拦截器、MuerProperties
聚合 muer-spring-boot-starter 聚合上述依赖,宿主只需引入它
示例 muer-example 唯一消费应用,演示完整链路
  1. IdentityAuthenticator:校验凭据并投影 IamPrincipal(源码 IdentityAuthenticator.java);
  2. ResourceHierarchyProvider:判断资源是否落在 scope 内(源码 ResourceHierarchyProvider.java);
  3. MvcResourceDescriptorResolver:把请求解析为 ResourceDescriptor

快速开始跑通链路,或先阅读安装