4.8K Star 6K Fork 451

MarsTech / Mars-Admin

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

学习交流

QQ群:930389350

V1.0.0

项目介绍

本项目基于Spring Cloud 和Ant Design Pro实现前后端管理平台一站式脚手架,便于快速开发企业级应用。我们的愿景是 基于Copy&Paste技术,实现面向Google&Baidu编程,让码农搬砖不累,做更好的良民。

项目实现:

  1. admin-service基于Spring Cloud Hoxton.RELEASE(Spring boot 2.2.2RELEASE)实现配置、注册、认证等通用服务,实现一键式生产级微服务框架
  2. Spring Security基于Oauth2认证并生成JWT Token,并自定义SSO统一登录页面,实现标准认证协议,保证登陆安全
  3. 基于Ant Design Pro实现admin-ui, 前后端分离,使用Spring Security SSO登录页面登录,并基于JWT Token实现权限控制。全栈工程师,前后端一站式服务。
  4. 所有服务均编写了DockerFile文件,可以立即实现K8s部署。实现了阿里云云效的release文件,建议通过阿里云云效实现持续集成持续交付部署,目前我们的环境云效会自动监听git代码提交,当发生代码提交时,自动编译并部署到测试的k8s容器集群环境
  5. Ironman服务中实现多数据源配置,redis配置,Feign, ribbon, 并通过注解实现基于JWT Token中角色控制API访问权限
  6. 增加Swagger配置,实现自动生成api文档
  7. Config服务实现测试环境和生产环境配置文件隔离
  8. Registry服务支持多实例高可用部署
  9. Monitor服务实现Spring Boot Admin 监控服务
  10. Gateway服务实现网关服务。生产环境如果使用K8s部署,因为有内部DNS和路由,不需要部署

admin-service

描述

建立Spring Cloud常用微服务,包括配置服务、注册服务、认证服务,满足中小企业及个人基础框架开箱即用。支持采用阿里云云效服务和kubernetes容器服务实现生产级持续部署持续集成。

Spring cloud中最复杂的其实是认证服务,本项目认证服务已经支持

  1. 实现Oauth2认证生成JWT Token
  2. 定义统一登录页面实现sso登录
  3. 支持自定义认证方式,实现多种方式认证
  4. 支持直接通过API直接获取JWT Token,满足小程序、微信公众号等已经认证过需要直接获取token的场景
启动服务
- 首先启动config服务和registry服务
- 启动auth服务
- 通过注册服务http://localhost:8761 即可查看启动的服务

注册服务 - 如需要启动监控服务,可以启动monitor服务,访问端口为http://localhost:8001

admin-ui

描述

本项目基于 Ant Design Pro V4.0 定制开发,加入以下内容:

  1. 通过Spring Security中的统一登录平台进行登录
  2. 基于后台返回的jwt token 中的角色进行权限认证
  3. 增加 nodejs server 端 Koa、Koa Router,可以直接部署
  4. 增加 dockerfile 文件,可以通过k8s进行部署

启动

  1. 安装依赖
sudo npm install tyarn -g
tyarn install

或者

sudo npm install cnpm -g
cnpm install
  1. 启动项目
npm start
  1. 启动服务端 至admin-ui目录下
node ./server/app.js

编译项目

npm run build

login-ui

本项目用于Spring Security中的统一登录前端界面,实现后,需要将打包后的生产文件(build/)拷入微服务auth项目下(resources/public)

本地测试运行

$ npm install
$ npm start

打包

$ npm run build

效果

  1. 浏览器输入localhost:8000后会自动跳转到登录页 登录

  2. 输入用户名和密码 admin/admin后,跳转到首页 首页

  3. Cookie中JWT Token JWT Token

  4. 监控服务localhost:8001效果(如果启动了monitor服务,用户名和密码为admin/admin) 监控应用

应用详情

  1. 移动端效果

输入图片说明

输入图片说明

文档

  1. Spring Security认证基本原理 https://www.jianshu.com/p/f3a0fb302ef1
  2. Spring Security OAuth2.0自定义登录页面 + JWT Token配置 https://www.jianshu.com/p/122dace5d570
  3. Spring Secutity 添加过滤器实现自定义登录认证 https://www.jianshu.com/p/68885d0e1cd9
  4. Spring Security 自定义生成JWT Token API https://www.jianshu.com/p/afed86fb90bb
MIT License Copyright (c) 2020 zhangpengcheng Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

管理后台脚手架: Spring Coud微服务 + Spring Security SSO + JWT Token +自定义登陆页面 + 前后端分离 + Ant Design Pro + K8s部署 +Swagger + 多数据源 + Redis 展开 收起
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/acube001/mars-admin.git
git@gitee.com:acube001/mars-admin.git
acube001
mars-admin
Mars-Admin
master

搜索帮助

14c37bed 8189591 565d56ea 8189591