GithubHelp home page GithubHelp logo

febsteam / febs-shiro Goto Github PK

View Code? Open in Web Editor NEW
5.8K 5.8K 2.3K 12.41 MB

Spring Boot 2.4.2,Shiro1.6.0 & Layui 2.5.6 权限管理系统。

License: Apache License 2.0

Java 95.68% FreeMarker 0.89% PLpgSQL 3.43%
apache-shiro bootstrap java redis shiro spring spring-boot spring-boot2

febs-shiro's People

Contributors

clefzz avatar fisetch avatar gelibo avatar mgzu avatar ming-lz avatar notlcry avatar pangpython avatar robinliu2827 avatar wuyouzhuguli avatar yqmmm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

febs-shiro's Issues

手机版适配

这个如果要做手机版适配,有什么好的思路吗

linux下jar方式启动无法读取classpath:ip2region/ip2region.db

使用如下方式:先获取文件路径,将文件拷贝至新的临时路径下再使用classpath读取可解决。如下:
String dbPath = AddressUtils.class.getResource("/ip2region/ip2region.db").getPath();
log.info("dbPath:{}", dbPath);
File file = new File(dbPath);
if (!file.exists()) {
String tmpDir = System.getProperties().getProperty("java.io.tmpdir");
dbPath = tmpDir + "ip.db";
System.out.println(dbPath);
file = new File(dbPath);
FileUtils.copyInputStreamToFile(AddressUtils.class.getClassLoader().getResourceAsStream("classpath:ip2region/ip2region.db"), file);
}

system.domain.Dict

@Column(name = "TABLE_NAME")
@ExportConfig(value = "列名")
private String tableName;

@Column(name = "FIELD_NAME")
@ExportConfig(value = "表名")
private String fieldName;

这两个变量的ExportConfig值是否反了呢?

redis的用户分页有问题

系统管理>用户管理,其中用户分页,其中用了redis,

[在UserServiceImpl的findUserWithDept方法中,调用缓存返回的其中都是之前缓存在redis中的对象[]

分页不起作用

首先感恩提供学习资源,这个地方:

PageHelper.startPage(request.getPageNum(), request.getPageSize());

PageInfo pageInfo = new PageInfo<>((List) s.get());

s.get()这样写在startPage后面好像没用pageInfo.getList size不变化

不知道是不是我理解错了

疑问

在项目使用 aop 的情况下,下面的这段代码是否不需要? 如果保留,会不会产生二次代理问题?

/**
* DefaultAdvisorAutoProxyCreator 和 AuthorizationAttributeSourceAdvisor 用于开启 shiro 注解的使用
* 如 @RequiresAuthentication, @RequiresUser, @RequiresPermissions 等
*
* @return DefaultAdvisorAutoProxyCreator
*/
@bean
@dependsOn({"lifecycleBeanPostProcessor"})
public DefaultAdvisorAutoProxyCreator advisorAutoProxyCreator() {
DefaultAdvisorAutoProxyCreator advisorAutoProxyCreator = new DefaultAdvisorAutoProxyCreator();
advisorAutoProxyCreator.setProxyTargetClass(true);
return advisorAutoProxyCreator;
}

权限系统设计

应该需要把权限设计的粒度更细一些,达到页面级别的元素,要不然只能当做学习用

excel、csv 导出错误

以用户管理为例
list 查询为 this.userService.findUserWithDept(user, null);,而 UserService 的 findUserWithDept 方法用到了缓存

    @Cacheable(key = "#p0.toString()+ #p1.toString()")
    List<User> findUserWithDept(User user, QueryRequest request);

当导出时,第二个参数为 null,而 null 是没有 toString() 方法的。

压测

不知道你的预览地址的服务器架构与配置,反正我压测你的预览服务长时间没有反应

任意文件下载漏洞

您好,我是奇虎360代码卫士团队的工作人员,在我们的开源项目检测中发现FEBS-Shiro存在任意文件下载漏洞,详细信息如下:
default
在这个Controller中,没有对文件下载的路径和文件类型做任何过滤,导致恶意攻击者可以通过构造如下请求下载项目的敏感文件(如application.yml)
default
default
返回状态码为200。本来是想在http://111.230.157.133下通过../进行路径穿透演示下载application.yml文件的,但是由于该服务器上应该是配了waf的(也可能是其他原因)导致我的ip地址被加入到了黑名单,演示不了,您可以自行进行验证。

登录时验证码BUG

登录时输入正确的验证码,但是输入错误的用户名或者密码,此时点击登录会提示验证不通过,并且验证码没有发生变化,但是此时你输入正确的用户名密码,再点击登录,就会提示验证码错误

字典 excel 导出 bug

页面字段为 key,实体类中为 keyy,导出时会使查询条件无效。

<input type="text" name="key" class="form-control">
private String keyy;

数据库表不规范

仔细看了下作者的数据库sql,觉得数据库设计的非常不规范,不论是字段名,还是表结构设计。
我觉得功能的实现不是最重要的,数据库设计的不合理,功能做的再好也只能是空中楼阁,后期维护非常麻烦。请作者先仔细设计数据库

able 'febs_base.t_job' doesn't exist

SQL: SELECT job_id jobId, bean_name beanName, method_name methodName, params, cron_expression cronExpression, status, remark, create_time createTime FROM t_job ORDER BY job_id

Cause: java.sql.SQLSyntaxErrorException: Table 'febs_base.t_job' doesn't exist

; bad SQL grammar []; nested exception is java.sql.SQLSyntaxErrorException: Table 'febs_base.t_job' doesn't exist

权限缓存处理

当管理员修改了某个用户的权限,为什么不清空redis中该用户的缓存?现在情况是权限修改后,用户刷新页面,前端的菜单栏有修改,但是权限还是读缓存的。

没有初始化sql文件?

找不到以前的init.sql 而且以前的版本都是字段名大写,没法用,麻烦给一份谢谢

用户权限BUG

1、普通用户(smith)登录后,点击【网络资源->每日一文】
(PS:点击“每日一文”后,Shiro调用用户授权代码,并将该用户的授权链接存入缓存)
2、不点退出,地址栏输入登录页面/login.
3、然后再用管理员用户(mrbird)登录,登录后,那些需要授权才能访问的菜单链接,点击都会报 “{"msg":"暂无权限,请联系管理员!","code":500}”
5、同理,反过来的话。普通用户居然就可以访问管理员的才能访问的url了。

Failed to decode downloaded font

打开首页后显示,
Failed to decode downloaded font:
login:1 OTS parsing error: incorrect file size in WOFF header
login:1 OTS parsing error: FFTM: misaligned table
login:1 OTS parsing error: FFTM: invalid table offset
login:1 OTS parsing error: GDEF: misaligned table

同时登录后台会菜单的图标无法显示,

百度了下,
maven-resources-plugin copy 静态资源时,如果有true标签,会破坏fontawesome 中的文件,但是已经修改,却还是不起作用

<resources>
            <!--处理资源文件,主要剔除env不同环境的文件-->
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <excludes>
                    <exclude>static/**/*</exclude>
                    <exclude>config/ip2region.db</exclude>
                </excludes>
            </resource>
            <!--filter为true对二进制文件有影响,不处理前端文件-->
            <resource>
                <directory>src/main/resources</directory>
                <filtering>false</filtering>
                <includes>
                    <include>static/**/*</include>
                    <include>config/ip2region.db</include>
                </includes>
            </resource>
 </resources>

麻烦看下?

主键生成策略

目前的主键是用的表自增主键,且不说主键自增本身的一些缺陷(移库移表,分库分表),在类里面用的是long类型的id,我发现在id长度达到19位(long所支持的最大长度)的时候,前后台传值会出现精度丢失的问题

建议作者弄一个开发分支一个稳定分支

分支4505f9627af80accca47b29e462c7fc842e980ab验证码用不了。
但是早上我下载的是b881dfb2bad10d3e987485f9d0166f24ea1c08f2分支,早上我用的验证码还比较正常,下午我重新下载分支,然后验证码出问题,我还以为是我自己的问题。

docker化

写个dockerfile,可用直接用镜像方式了。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.