推荐一个开发框架,支持单点登录+开放平台功能

43 阅读4分钟

🚀 更新摘要

标题: MDP V0.0.7 发布:开放平台功能基本完成,优化单点登录、注销、退出功能, 并优化多环境适配

简介: 增加了完整的开放平台网关及 API 服务,支持多场景事件订阅与接口调用;深度重构 Sa-Token 源码以支持 “一个 sso 服务端对接多个 sso 客户端” 的架构;同时引入四种环境变量模式,实现了依赖项的精细化控制与最小化引入。

项目地址:

  1. github.com/henhen6/mdp
  2. gitcode.com/henhen6/mdp
  3. gitee.com/henhen6/mdp

📝 详细变更日志

🌐 开放平台与网关 (Open Platform)

  • 新增核心服务: 引入 sop-gateway-server (网关)、md-api (接口服务) 及 zookeeper-server (注册中心),构建完整的接口调用、校验与认证体系。
  • API 能力增强: 新增组织、用户、消息等标准开放接口,并提供配套 SDK 与完整调用示例
  • 功能矩阵: 新增应用事件订阅、帮助文档管理、消息回调及接口审计日志。
  • 修复: 修正了 sop-gateway-server 接口注册时的查询逻辑错误。

🔐 认证与安全 (Auth & SSO)

  • SSO 深度定制: 自行维护并重构 sa-token 相关源码,拆分为更细粒度的 starter 组件,支持非 sa-token 项目最小化集成。

  • 架构突破: 改造 sa-token-sso,支持 1 个 SSO 服务端对应多个 SSO 客户端 的复杂场景,适配 web-consoleweb-openweb-workbench 3 个 SSO 客户端对接 1 个 boot-server

    后端项目。

  • 单点注销: 优化退出逻辑,支持 “当前浏览器注销” 模式。

  • 免密体验: 应用表新增 “自动登录地址” 字段,实现从工作台点击应用后直接免密跳转。

🛠️ 系统架构与环境 (Architecture)

  • 四级环境适配: 实现不同环境下的最小化依赖引入:

    • dev: 轻量模式,无开放平台功能,不依赖 zookeeper/Nacos。
    • sop: 全功能开发模式,依赖 zookeeper 及本地存储。
    • test/prod: 全功能集群模式,依赖 Nacos 及 Minio 存储。
  • 规范化重构: 统一缓存前缀注入机制 (CacheKeyBuilder)。

    • 重构代码生成器模板,详情页与表单全面切换至 统一表单组件

🚀 升级内容截图

🚀项目介绍

主数据平台(master-data-platform),简称 MDP。MDP 基于 Java17、SpringBoot、vue3、ant-design-vue 等主流技术构建的中后台快速开发平台,立志打造为一个企业级的软件开发基础脚手架,帮助企业快速搭建一个基础开发框架。

简单来说,可以理解为 MDP 是集 单点登录系统、主数据(基础数据)维护与管理、开发者平台(开放平台)等功能于一身的平台。

该项目主要功能包含:基础数据管理、权限管理、用户身份认证、应用(子系统)集成。

  • 基础数据管理

    • 组织机构管理、岗位管理、用户管理
    • 钉钉等三方数据同步
    • 菜单管理、角色模板管理、角色管理
    • 字典管理、配置管理
  • 权限管理

    • 应用权限管控
    • 菜单、按钮、数据、字段权限的配置、授权和鉴权
    • 接口权限的配置、授权和鉴权
  • 用户身份认证

    • SSO、Oauth2 等多种主流的单点登录协议。
  • 应用(子系统)集成

    • 接入与审批
    • 免密登录与一键跳转
    • 数据订阅与拉取
    • 接口调用与管控
    • SDK 下载
    • 文档生成与查看
  • 其他功能

    • 消息中心
    • 用户个人中心
    • 可视化代码生成
    • 短信、邮件、站内信功能
    • 文件存储
    • 登录日志、操作日志

核心功能特性

统一身份认证体系

  • 支持 SSO、OAuth2 等多种主流单点登录协议
  • 实现多系统间的无缝登录体验
  • 统一的权限管理和访问控制

应用生态管理

  • 子应用的快速接入与审批流程
  • 统一的应用门户和工作台
  • 完整的应用生命周期管理

基础数据治理

  • 标准化的主数据管理
  • 数据质量控制和一致性保障
  • 灵活的数据服务接口

核心子应用

MDP 内置了 3 个子应用,分别是:工作台、控制台、开放平台,满足不同场景下的使用:

子系统代码简称核心功能
工作台mdw用户统一操作入口、我的应用、统一登录、统一注册、消息中心
控制台mdc主数据维护、系统配置、应用审批、接口管理、文档配置、组织架构、数据字典、参数配置
开放平台mdo第三方应用申请和管理、接口调用、文档查看、SDK 支持、接口调用次数查询

项目演示环境

  1. 工作台
  2. 控制台
  3. 开发者中心