本项目使用 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
修改 MySQL
和 Redis
连接信息.
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.
大家对此项目有什么建议和意见,都欢迎提出。
1
AnnieSWonderland 2019-05-20 09:59:55 +08:00
登录不上去![]( http://picbed.owudo.cn/test.gif
) |
2
zhaojun1998 OP @AnnieSWonderland 清理下缓存,或换一个浏览器试试,我这测试可以登录
|
3
AnnieSWonderland 2019-05-20 10:07:54 +08:00
@zhaojun1998 =.=,第一次登录可以登录,然后我把所有用户强制下线后就登陆不了了,清除缓存也不行,但是隐身模式可以登录!!!
|
4
zhaojun1998 OP @AnnieSWonderland 这应该算 bug,我自己会复现下试试。我猜测应该是强制下线后,服务器标记 sessionId 不可用了,但浏览器还在 cookie 中留了 sessionId 导致的问题。
|
5
AnnieSWonderland 2019-05-20 10:27:50 +08:00
@zhaojun1998 看了下,只要在在线用户中将自己下线后就再也登录不上去了,但是不知道为啥就算我清理了所有的缓存依然登录不上去,cookie,storage...只有无痕模式可以
|
6
zhaojun1998 OP @AnnieSWonderland 嗯,我再排查下原因,晚上下班后解决。
|
7
zsy979 2019-05-20 10:54:39 +08:00
最近刚用 Shiro 做了权限控制,来学习一下楼主的
|
8
huguang3320 2019-05-20 10:57:39 +08:00
已 down 帮顶
|
9
zhaojun1998 OP @AnnieSWonderland 老哥,如详细说下咋操作的吗,我这复现不了啊
|
10
AnnieSWonderland 2019-05-22 09:00:46 +08:00
@zhaojun1998 电脑有点卡,录得有点卡 ![]( http://picbed.owudo.cn/test.gif)
|
11
AnnieSWonderland 2019-05-22 09:05:11 +08:00
@zhaojun1998 上面那个图片发错了,重发一个 ![]( http://picbed.owudo.cn/testlogin.gif)
|
12
zhaojun1998 OP @AnnieSWonderland ok 我复现成功了,我看看到底什么导致的。
|
13
kylix 2019-05-22 09:19:42 +08:00
感谢分享,mark 一下
|
14
zhaojun1998 OP @AnnieSWonderland 找到原因了,是我 nginx 反向代理的问题。加上 nginx 反代就会出现这个问题。
|