分享一个 Shiro 权限管理系统,支持 HTTP Method 粒度的权限控制!

2019-05-20 09:11:39 +08:00
 zhaojun1998

Shiro-Action

本项目使用 Spring Boot 搭建, 用于加深对 Spring Boot 与 Shiro 的学习, 项目特色是支持 restful 风格权限控制, 支持对同一 URL, 不同 HTTP Mehtod 的权限控制, 适用于更多的场景.

项目地址: https://github.com/zhaojun1998/Shiro-Action

预览地址: http://shiro.zhaojun.im/

文档地址: http://docs.zhaojun.im/shiro/

默认管理员账号: admin, 密码: 123456.

普通用户账号: user, 密码: 123456.

为了不影响其他人的浏览体验, 请尽量不要进行删除类的敏感操作. admin 为超级管理员, 自动拥有全部权限.

快速开始

下载项目

git clone https://github.com/zhaojun1998/Shiro-Action.git

导入项目

使用自己的 IDE 导入, Eclipse 和 Intellij IDEA 均可.

导入数据库

创建数据库, 字符集选择 utf8, 排序规则选择 utf8_general_ci.

然后导入 shiro_action.sql 到数据库中.

配置文件

打开 application.properties 修改 MySQLRedis 连接信息.

spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.cache.type=redis

spring.datasource.username=root
spring.datasource.password=123456
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/shiro_action?useSSL=false&characterEncoding=UTF8

启动项目

在完成了上述步骤后,找到 ShiroActionApplication 启动类, 启动即可.

启动后访问地址为: http://localhost:8080 , 用户名:admin, 密码:123456.

系统预览

技术选型

前端

后端

大家对此项目有什么建议和意见,都欢迎提出。

3576 次点击
所在节点    分享创造
14 条回复
AnnieSWonderland
2019-05-20 09:59:55 +08:00
登录不上去![]( http://picbed.owudo.cn/test.gif
)
zhaojun1998
2019-05-20 10:03:10 +08:00
@AnnieSWonderland 清理下缓存,或换一个浏览器试试,我这测试可以登录
AnnieSWonderland
2019-05-20 10:07:54 +08:00
@zhaojun1998 =.=,第一次登录可以登录,然后我把所有用户强制下线后就登陆不了了,清除缓存也不行,但是隐身模式可以登录!!!
zhaojun1998
2019-05-20 10:17:49 +08:00
@AnnieSWonderland 这应该算 bug,我自己会复现下试试。我猜测应该是强制下线后,服务器标记 sessionId 不可用了,但浏览器还在 cookie 中留了 sessionId 导致的问题。
AnnieSWonderland
2019-05-20 10:27:50 +08:00
@zhaojun1998 看了下,只要在在线用户中将自己下线后就再也登录不上去了,但是不知道为啥就算我清理了所有的缓存依然登录不上去,cookie,storage...只有无痕模式可以
zhaojun1998
2019-05-20 10:42:37 +08:00
@AnnieSWonderland 嗯,我再排查下原因,晚上下班后解决。
zsy979
2019-05-20 10:54:39 +08:00
最近刚用 Shiro 做了权限控制,来学习一下楼主的
huguang3320
2019-05-20 10:57:39 +08:00
已 down 帮顶
zhaojun1998
2019-05-21 20:46:46 +08:00
@AnnieSWonderland 老哥,如详细说下咋操作的吗,我这复现不了啊
AnnieSWonderland
2019-05-22 09:00:46 +08:00
@zhaojun1998 电脑有点卡,录得有点卡 ![]( http://picbed.owudo.cn/test.gif)
AnnieSWonderland
2019-05-22 09:05:11 +08:00
@zhaojun1998 上面那个图片发错了,重发一个 ![]( http://picbed.owudo.cn/testlogin.gif)
zhaojun1998
2019-05-22 09:07:52 +08:00
@AnnieSWonderland ok 我复现成功了,我看看到底什么导致的。
kylix
2019-05-22 09:19:42 +08:00
感谢分享,mark 一下
zhaojun1998
2019-05-22 09:26:44 +08:00
@AnnieSWonderland 找到原因了,是我 nginx 反向代理的问题。加上 nginx 反代就会出现这个问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/565671

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX