This action will force synchronization from dromara/dante-cloud, which will overwrite any changes that you have made since you forked the repository, and can not be recovered!!!
Synchronous operation will process in the background and will refresh the page when finishing processing. Please be patient.
Github 仓库 | Gitee 仓库 | 核心组件仓库 | v3.0.0 | 文档
自11月24日,Spring Boot 3.0 以及 Spring Cloud 2022.0.0、Spring Cloud Tencent 等全新版本发布,整个Java 社区也步入的 Java 17 和 Spring Boot 3 的新时代。
紧跟 Java 技术和 Spring 社区的发展,让更多质量更好、性能更优的新特性服务于实际的开发工作,Dante Cloud 也同步进行升级及适配,开发了全新的 3.0 版本。
基于 Spring Authorization Server 1.1.0、Spring Boot 3.0.5、Spring Cloud 2022.0.1、Spring Cloud Tencent 1.10.2-2022.0.1、Spring Cloud Alibaba 2021.0.5.0、Nacos 2.2.1 等主流技术栈开发的 Dante Cloud v3.0.0 已经正式发布,关注请移步 【v3.0.0 分支】
Dante Cloud (但丁,原 Eurynome Cloud) 是一款企业级微服务架构和服务能力开发平台,是采用领域驱动设计(DDD)的、全面拥抱 Spring Authorization Server 的、基于 OAuth2.1 协议的微服务架构。基于 Spring Boot 2.7.10、Spring Cloud 2021.0.6、Spring Cloud Alibaba 2021.0.5.0、Spring Authorization Server 0.4.1、Nacos 2.2.1 等最新版本开发,遵循 SpringBoot 编程思想,高度模块化和可配置化。具备服务发现、配置、熔断、限流、降级、监控、多级缓存、分布式事务、工作流、多租户等功能,代码简洁,架构清晰,非常适合学习和企业作为基础框架使用。
基于 Spring Authorization Server
深度定制和扩展:
Spring Authorization Server
和 Spring Data JPA
实现多租户系统架构, 支持 Database 和 Schema 两种模式。Spring Data JPA
,重新构建 Spring Authorization Server
基础数据存储代码,替代原有 JDBC
数据访问方式,破除 Spring Authorization Server
原有数据存储局限,扩展为更符合实际应用的方式和设计。Spring Authorization Server
,在 OAuth 2.1 规范基础之上,增加自定义 Resource Ownership Password
(密码)
认证模式,以兼容现有基于 OAuth 2 规范的、前后端分离的应用,支持 Refresh Token 的使用。Spring Authorization Server
,在 OAuth 2.1 规范基础之上,增加自定义 Social Credentials
(社会化登录)
认证模式,支持手机短信验证码、微信小程序、基于JustAuth的第三方应用登录, 支持 Refresh Token 的使用。Spring Authorization Server
默认的 Client Credentials
模式,实现 Client Credentials
模式支持 Refresh
Token 的使用。Spring Authorization Server
默认的 Client Credentials
模式,实现真正的使用 Scope 权限对接口进行验证。 增加客户端
Scope 的权限配置功能,并与已有的用户权限体系解耦Spring Authorization Server
Authorization Code PKCE
认证模式Spring Authorization Server
的标准的 JWT Token 加密校验方式外,新增基于自定义证书的 JWT Token
加密校验方式,可通过配置动态修改。Authorization Code
、Resource Ownership Password
、Social Credentials
几种模式,全面融合 IdToken、Opaque
Token、JWT Token 与现有权限体系,同时提供 IdToken 和 自定义Token 扩展两种无须二次请求的用户信息传递方式,减少用户信息的频繁请求。Spring Security 5
以及 Spring Authorization Server
的代码规范,进行 OAuth2 认证服务器核心代码的开发,遵照其使用
Jackson 反序列化的方式, 增加大量自定义 Jackson Module。Spring Authorization Server
授权码模式登录认证页面和授权确认页面,授权码模式登录采用数据加密传输。支持多种验证码类型,暂不支持行为验证码。Spring Data JPA
二级缓存,有效解决 Spring Cache 查询缓存更新问题。代码结构的大规模调整和优化:
Spring Authorization Server
版本,原有基于 Spring Security OAuth2
的版本已经移至
spring-security-oauth2 分支,可以从该分支或发行版页面获取历史版本继续使用。后期会根据 ISSUE
以及使用用户反馈情况,再行决定是否继续维护 Spring Security OAuth2
版本。新增开源内容包括:
@PreAuthorize
注解权限与 URL
权限,通过后端动态配置,无须在代码中配置 Spring Security
权限注解以及权限方法,即可实现接口鉴权以及权限的动态修改。采用分布式鉴权方案,规避 Gateway 统一鉴权的压力以及重复鉴权问题Spring Security
@PreAuthorize
的权限注解、权限方法以及 URL
权限,通过后端动态配置后,实时动态分发至对应服务。OAuth2
UserDetails
核心数据支持直连数据库获取和 Feign
远程调用两种模式。OAuth2
直连数据库模式性能更优,Feign
访问远程调用可扩展性更强。可通过配置动态修改采用策略方式。OAuth2
授权模式,使用统一 Token
接口,实现手机验证码登录认证,与平台为统一体系,统一返回OAuth2
Token,支持服务接口鉴权JustAuth
,采用自定义 OAuth2
授权模式,使用统一 Token
接口,实现基于 JustAuth
实现第三方系统社交登录认证,与平台为统一体系,统一返回 OAuth2
Token,支持服务接口鉴权。所有 JustAuth
支持的第三方系统均支持。OAuth2
授权模式,使用统一 Token
接口,实现支持微信小程序登录认证,与平台为统一体系,统一返回 OAuth2
Token,支持服务接口鉴权。OAuth2
默认认证接口。目前未集成的外部系统,可参考标准,适当增减参数,即可支持接入。不一定非要捐赠或者参与编写代码,才是参与开源项目的正确方式。点个
Star
、提个格式规范的 ISSUE,也是在积极参与开源项目,更是对作者莫大的支持和鼓励。
开发新手在群内提问或新开 Issue 提问前,请先阅读 【提问的智慧】 ,并确保认真、详细地查阅过本项目 【在线文档】,特别是【常见问题】章节。避免浪费大家的宝贵时间;
部分功能演示,正在逐步添加
组件 | 版本 |
---|---|
Spring Boot |
2.7.10 / 3.0.5 |
Spring Cloud |
2021.0.6 / 2022.0.1 |
Spring Cloud Alibaba |
2021.0.5.0 / 2022.0.0.0-RC1 |
Spring Cloud Tencent |
1.10.2-2022.0.1 |
Spring Authorization Server |
0.4.1 / 1.1.0 |
Spring Boot Admin |
2.7.10 / 3.0.2 |
Nacos |
2.2.1 |
Sentinel |
1.8.5 |
Seata |
1.5.2 |
Spring
全家桶版本对应关系,详见:版本说明
本系统版本号,分为四段。
dante-cloud
├── configurations -- 配置文件脚本和统一Docker build上下文目录
├── dependencies -- 工程Maven顶级依赖,统一控制版本和依赖
├── module -- 依赖组件半成品拼装工程
├ ├── dante-module-common -- Module 相关模块公共辅助代码
├ ├── dante-module-security -- Security 相关配置代码模块
├ ├── dante-module-strategy -- 核心数据访问模式策略模块
├ ├── dante-module-upms-logic -- UPMS 基础管理及共享代码模块
├ └── dante-module-upms-rest -- UPMS 基础管理接口模块组件
├── packages -- 基础核心Starter
├ ├── authorization-spring-boot-starter -- OAuth2 认证基础Starter,主要用于 UAA 认证服务器以及单体版 Dante Cloud
├ └── service-spring-boot-starter -- 平台接入应用服务通用 Starter
├── platform -- 平台核心服务
├ ├── dante-cloud-gateway -- 服务网关
├ ├── dante-cloud-message -- 消息服务
├ ├── dante-cloud-monitor -- Spring Boot Admin 监控服务
├ ├── dante-cloud-upms -- 统一权限管理系统服务
├ └── dante-cloud-uaa -- 账户管理和统一认证模块
├── services -- 平台业务服务
├ ├── dante-cloud-bpmn-ability -- 工作流服务
└── └── dante-cloud-bpmn-logic -- 工作流基础代码包
后端单体版示例工程地址:https://gitee.com/herodotus/dante-cloud-athena
序号 | 名称 | 官网 |
---|---|---|
1 | 轻喜到家 | https://qxdaojia.com/ |
赞助人 | 赞助时间 |
---|---|
偷土豆的人 | 2021-11-24 |
lorron | 2022-04-04 |
在云端 | 2022-12-26 |
西晽 | 2022-12-27 |
p911gt3rs | 2023-01-03 |
jacsty | 2023-01-31 |
hubert_rust | 2023-03-16 |
Zkey Z | 2023-03-18 |
志国欧巴 | 2023-03-27 |
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。