oauthserver
简介
oauthserver是一个基于Spring Boot Oauth2的完整的独立的Oauth2 Server微服务。项目的目的是,仅仅需要创建相关数据表,修改数据库的连接信息,你就可以得到一个Oauth2 Server微服务。
为了开发方便,项目拆分成三个模块,api、web和common:
- api运行在8181端口,api模块是提供api服务的,主要是oauth token等其他业务接口;
- web运行在8182端口,是一个基于Element UI的管理后台;
- common是公共工具模块。
支持的关系型数据库:
- MySQL
- Oracle
- PostgreSQL
功能概览
api
- Oauth token服务,支持3种登录方式:手机号+验证码、手机号+密码、邮箱+密码(使用流程参考oauth接口调用示例,如果你需要使用短信验证码服务,请前往阿里大于和云之讯短信服务购买短信验证码服务,并在application.properties中配置相关参数);
- 短信验证码服务,支持三种:阿里大于、腾讯云短信服务、云之讯短信服务;
- 微信、支付宝支付;
- 七牛云存储;
- 代码生成器。
common
公共工具类模块
web
- 主页
- 了解OauthServer
- 新闻管理
- 订单管理
- 系统管理
- 定时任务
- 菜单管理
- 用户管理
- 权限管理
- 数据字典
- 系统工具
- 代码生成
- swagger
- druid
- 日志管理
更新日志
2.0.20190708-alpha
- 代码生成器多语言bug修复;
- postgresql环境下的sql bug修复;
- 更新全局异常处理;
- session有效期为半小时,解决登录失效时,跳转登录页面的iframe嵌套问题;
- 升级element-ui 2.9.1->2.10.1;
- 添加验证码测试接口;
- 减少一些依赖;
- 给t_users表的username列添加唯一键;
- 修复使用refresh_token刷新access_token时,报“不支持的登录方式”的bug;
- web模块支持用户名登录;
- api模块新增常用用户相关接口。
2.0.20190621-alpha
- 代码生成器bug修复;
- t_s_column_ui添加字段;
- 修复postgresql下的登录问题。
- 修复用户管理页面导入功能;
- BasicService添加批量保存和批量更新接口方法;
- 代码生成器生成的导入接口代码,添加提示“该请求路径必须添加到WebSecurityConfig的csrf忽略列表里”;
- 修复新增和编辑页面错误提示不显示的bug。
2.0.20190617-alpha
- 更新代码生成器生成的entity模板,添加excel导入导出注解;
- 升级myexcel 2.5.0->2.5.1,升级element-ui 2.7.2->2.9.1;
- 菜单管理页面优化;
- 修复quartzJob form label过长换行bug;
- 图标管理页面国际化bug修复;
- 修复一些国际化细节bug。
更多历史更新日志查看CHANGE_LOG.md
使用流程
准备
IntelliJ IDEA或Eclipse请先安装lombok插件。
- IntelliJ IDEA安装请参考https://projectlombok.org/setup/intellij;
- Eclipse安装请参考https://projectlombok.org/setup/eclipse。
1. 安装jar
有部分自建jar在**仓库是没有的,需要使用mvn install
安装到本地。执行“需要安装的jars”文件夹下的install.bat
安装。
2. 建表
- MySQL
请执行schema-mysql.sql
,完成数据表的创建和测试数据的导入。之后,请执行SQL增量更新目录下的增量更新SQL。 - Oracle
请执行schema-oracle.sql
,完成数据表的创建和测试数据的导入。之后,请执行SQL增量更新目录下的增量更新SQL。 - PostgreSQL
请执行schema-postgresql.sql
,完成数据表的创建和测试数据的导入。之后,请执行SQL增量更新目录下的增量更新SQL。
3. 修改数据库连接信息
- MySQL
连接信息在application-mysql.yml
里。修改完数据库连接信息后,还需要设置application-common.yml
的spring.profiles.active=mysql
。 - Oracle
连接信息在application-oracle.yml
里。修改完数据库连接信息后,还需要设置application-common.yml
的spring.profiles.active=oracle
。 - PostgreSQL
连接信息在application-pg.yml
里。修改完数据库连接信息后,还需要设置application-common.yml
的spring.profiles.active=pg
。
4. 运行
现在,一切已准备就绪。运行项目,当程序成功启动时,即表明你已配置成功。
api测试
管理端页面
测试账号:手机号18800000000,密码1234567890c
分享交流
在使用过程中有任何疑问或者问题,请提交issue,我会在收到的第一时间予以回复。