# 基于Spring Cloud和Spring Security的微服务权限管理系统
## 项目简介
本项目是一个基于Spring Cloud和Spring Security的微服务权限管理系统,旨在提供一个统一的用户认证、授权和权限管理解决方案。系统采用Spring Cloud作为微服务框架,Spring Security作为权限认证框架,结合Nacos作为服务注册和配置中心,Sentinel作为流量控制和熔断工具,SkyWalking作为链路跟踪工具,Redis作为缓存工具,MySQL作为数据库。
## 项目的主要特性和功能
### 1. 统一权限认证
- **授权服务 (`pure-auth-server`)**: 使用Spring Security OAuth2和MySQL开发授权服务,支持多种验证模式(如密码模式、授权码模式、隐式模式、客户端模式和刷新令牌模式)。用户信息和客户端信息存储在MySQL中,使用Redis缓存token、refresh token、RSA密钥等信息。
- **授权客户端 (`pure-auth-client`)**: 提供便捷的授权接口,便于统一管理使用授权客户端的服务。
### 2. 用户管理
- **用户信息管理**: 提供用户信息的增删改查功能,支持分页查询、条件查询、批量添加、添加或修改以及根据ID批量删除用户信息。
### 3. 网关服务
- **网关服务 (`pure-gateway`)**: 对外统一提供服务的应用,外部的所有请求都需要经过网关统一管理。网关服务使用Spring Cloud Gateway,并结合Sentinel、Nacos、Spring Security和Redis进行权限验证和流量控制。
### 4. 微服务监控
- **服务发现/服务注册中心**: 使用Nacos作为服务发现和服务注册中心。
- **微服务监控**: 使用Spring Cloud Admin进行微服务监控。
- **配置中心**: 使用Nacos作为配置中心。
- **熔断/流量卫兵**: 使用Sentinel进行流量控制和熔断。
- **链路跟踪**: 使用SkyWalking进行链路跟踪。
### 5. 数据库和缓存
- **数据库**: 使用MySQL作为主要数据库。
- **缓存**: 使用Redis作为缓存工具,缓存token、refresh token、RSA密钥等信息。
## 安装使用步骤
### 1. 环境准备
- **JDK**: 安装Oracle JDK 8或更高版本。
- **MySQL**: 安装MySQL数据库,并创建相应的数据库和表。
- **Redis**: 安装Redis,并启动Redis服务。
- **Nacos**: 下载并启动Nacos服务,配置服务注册和配置中心。
- **Sentinel**: 下载并启动Sentinel控制台,配置流量控制和熔断规则。
- **SkyWalking**: 下载并启动SkyWalking,配置链路跟踪。
### 2. 项目构建
- 复制项目代码到本地:
```bash
```
- 进入项目目录:
```bash
cd spring-cloud-me
```
- 使用Maven构建项目:
```bash
mvn clean install
```
### 3. 配置文件
- 在`application.yml`或`application.properties`中配置数据库连接、Redis连接、Nacos地址、Sentinel地址等。
- 配置Spring Security OAuth2的相关属性,如客户端ID、客户端密钥、授权类型等。
### 4. 启动服务
- 启动Nacos、Sentinel、SkyWalking等服务。
- 依次启动各个微服务模块,如授权服务、网关服务、用户管理服务等。
### 5. 访问系统
- 通过网关服务的地址访问系统,如`http://localhost:8080`。
- 使用授权服务提供的接口进行用户认证和授权。
### 6. 部署
- 如果使用Docker部署,需要设置为`--network host`模式,以便Nacos能提供宿主机的IP地址,以便其他服务正确访问。
通过以上步骤,您可以成功部署和使用基于Spring Cloud和Spring Security的微服务权限管理系统。
没有合适的资源?快使用搜索试试~ 我知道了~
(源码)基于Spring Cloud和Spring Security的微服务权限管理系统.zip
共176个文件
java:123个
xml:18个
json:11个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 163 浏览量
2024-11-18
10:24:49
上传
评论
收藏 240KB ZIP 举报
温馨提示
# 基于Spring Cloud和Spring Security的微服务权限管理系统 ## 项目简介 本项目是一个基于Spring Cloud和Spring Security的微服务权限管理系统,旨在提供一个统一的用户认证、授权和权限管理解决方案。系统采用Spring Cloud作为微服务框架,Spring Security作为权限认证框架,结合Nacos作为服务注册和配置中心,Sentinel作为流量控制和熔断工具,SkyWalking作为链路跟踪工具,Redis作为缓存工具,MySQL作为数据库。 ## 项目的主要特性和功能 ### 1. 统一权限认证
资源推荐
资源详情
资源评论
收起资源包目录
(源码)基于Spring Cloud和Spring Security的微服务权限管理系统.zip (176个子文件)
Dockerfile 483B
Dockerfile 254B
spring.factories 144B
spring.factories 140B
StringUtil.java 16KB
DateUtil.java 15KB
JsonUtil.java 12KB
AuthServerConfig.java 9KB
MathUtil.java 9KB
SerialCode.java 8KB
RsaUtil.java 8KB
CreateImageCode.java 8KB
ExceptionHandlerUtil.java 7KB
IgnoreAuthFilter.java 7KB
AuthService.java 7KB
MapUtil.java 7KB
DataUtil.java 6KB
MysqlDataSourceConfig.java 6KB
WebFluxPrintRequestFilter.java 6KB
SysUserServiceImpl.java 6KB
PageWhere.java 6KB
GlobalWebFluxExceptionHandler.java 5KB
BeanUtils.java 5KB
Result.java 5KB
WebSecurityConfig.java 5KB
DateConverter.java 5KB
AutoFillAdapt.java 5KB
BaseDomOpt.java 5KB
AuthServerApplicationTest.java 4KB
SwaggerResourceProvider.java 4KB
Encryption.java 4KB
ClientInfoVo.java 4KB
ArrayUtil.java 4KB
SysMenuController.java 4KB
RedisRouterRouteDefinitionRepository.java 4KB
UserAuthController.java 4KB
WebFluxTestController.java 4KB
JwtTokenFilter.java 4KB
SwaggerConfig.java 4KB
SysAuthorityServiceImpl.java 4KB
GatewayApplication.java 4KB
SysUserController.java 4KB
SysAuthorityController.java 4KB
WebFluxIgnoreAuthFilter.java 4KB
ClientDetailService.java 4KB
WebTestController.java 4KB
GlobalExceptionHandler.java 4KB
BaseServiceImpl.java 4KB
SysUser.java 3KB
SysRoleController.java 3KB
SysRoleServiceImpl.java 3KB
CustomBlockRequestHandler.java 3KB
WebPrintRequestFilter.java 3KB
SwaggerResourceController.java 3KB
AuthServerController.java 3KB
AuthProviderTest.java 3KB
BusinessException.java 3KB
FeignByJacksonConfig.java 3KB
RsaConfig.java 3KB
OAuth2ClientProperties.java 3KB
Base64Util.java 3KB
WebIgnoreAuthFilter.java 3KB
ApiException.java 3KB
SysMenuServiceImpl.java 3KB
ISysUserService.java 3KB
BaseDom.java 3KB
FeignByJacksonConfig.java 3KB
FeignAuthRequestInterceptor.java 3KB
SysAuthorityValidateImpl.java 3KB
ISysAuthorityService.java 3KB
SysAuthority.java 3KB
TokenAuthenticationSuccessHandler.java 3KB
FeignClientErrorDecoder.java 3KB
SentinelBlockStatisticSlotCallbackRegistry.java 3KB
LoginUserVo.java 3KB
ReqJwtTokenParam.java 3KB
BaseDomCfg.java 3KB
ISysMenuService.java 3KB
PageResult.java 2KB
ISysRoleService.java 2KB
AuthProperties.java 2KB
AuthProvider.java 2KB
Swagger2Properties.java 2KB
UserDetails.java 2KB
ObjectUtil.java 2KB
AuthServerApplication.java 2KB
AuthProviderFail.java 2KB
UserDetails.java 2KB
CustomAccessDeniedHandler.java 2KB
CustomAuthPoint.java 2KB
ExceptionResult.java 2KB
DaoImpl.java 2KB
CipherUtil.java 2KB
TokenAuthenticationFailureHandler.java 2KB
SysMenu.java 2KB
UserDetails.java 2KB
SwaggerHeaderFilter.java 2KB
BaseController.java 2KB
AuthClientAutoConfiguration.java 2KB
WebFluxTestApplication.java 2KB
共 176 条
- 1
- 2
资源评论
t0_54coder
- 粉丝: 2410
- 资源: 3444
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功