请问老师为什么用了hasRole()之后,hasAuthority()就失效了,上面的权限是不对的可是依然可以访问。
我的sxt,456显示无法登录
myshiro.zip
在UserRealm3中写
while(rs.next()){ SimpleAuthenticationInfo simpleAuthenticationInfo = new SimpleAuthenticationInfo(authenticationToken.getPrincipal(),rs.getString("pwd"),ByteSource.Util.bytes(rs.getString("salt")),"userRealm3"); return simpleAuthenticationInfo; }
运行TestC就会显示登入失败,并且报异常
把ByteSource.Util.bytes(rs.getString("salt")改为ByteSource.Util.bytes("lin")再运行TestC就登入成功
写ByteSource.Util.bytes(rs.getString("salt")出现的异常
log4j:WARN No appenders could be found for logger (org.apache.shiro.io.ResourceUtils). log4j:WARN Please initialize the log4j system properly. log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info. java.sql.SQLException: Column 'salt' not found. at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1084) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:973) at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:918) at com.mysql.jdbc.ResultSetImpl.findColumn(ResultSetImpl.java:1162) at com.mysql.jdbc.ResultSetImpl.getString(ResultSetImpl.java:5728) at com.bjsxt.shiro03.UserRealm3.doGetAuthenticationInfo(UserRealm3.java:40) at org.apache.shiro.realm.AuthenticatingRealm.getAuthenticationInfo(AuthenticatingRealm.java:568) at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doSingleRealmAuthentication(ModularRealmAuthenticator.java:180) at org.apache.shiro.authc.pam.ModularRealmAuthenticator.doAuthenticate(ModularRealmAuthenticator.java:267) at org.apache.shiro.authc.AbstractAuthenticator.authenticate(AbstractAuthenticator.java:198) at org.apache.shiro.mgt.AuthenticatingSecurityManager.authenticate(AuthenticatingSecurityManager.java:106) at org.apache.shiro.mgt.DefaultSecurityManager.login(DefaultSecurityManager.java:270) at org.apache.shiro.subject.support.DelegatingSubject.login(DelegatingSubject.java:256) at com.bjsxt.shiro03.TestC.main(TestC.java:25) 登入失败 Process finished with exit code 0
数据库
shiro01.rar
请问一下,我的老是报认证异常,而且我在service实现类和自定义的realm中输出查询到的信息都没有工作,应该是没有调用这些类的的方法,出现这样的错误是在哪呢?
为什么我修改了之后在此debug还是之前的配置呢
我重启了一下idea还是这样
1. 共同点:&和&&如果条件有一个为false,则全部为假
2. 不同点:&不管发生什么都会全部执行,而&&在遇到第一个false后就不往后执行。所以只有全部的条件都为true时&&才能全部执行完。
3. |和||一样。
老师你看我这么说对吗?和你视频讲解的意思不一样。
老师shiro程序是如何找到 realms的,就是从加载的ini文件里面找吗?
如果ini文件里面,没有配置JDBCRealm,那么它在加载这个文件的时候,用的默认的realm。
第二个例子中,讲述的JDBCRealm连接数据库,在shiro-jdbc.ini文件中配置了一个realm。
程序加载的是shiro-jdbc.ini
第三个例子中,讲的是认证策略,一个ini文件中,配置了多个realm。
我想问的是,程序运行时有多个realm,就是看ini文件中配置了多少个realm吗?
????????播放不了了?刷新了几遍还是这样,这是啥原因
老师,哪里有讲过easyui吗,会讲吗,之前视频里听到老师说会讲怎样学习easyui的
解决了,老师
捕获不了异常,只能捕获父类AuthenticationException异常。
视频中这样设置shiro.xml文件
所有的资源都能匿名访问吧。。。。。。下面的/user/loginSuccess.do =user 不起作用吧
老师,您好。
我测试了下您上传的代码,只能验证密码。用户名不验证的,不知道什么原因???
老师,我跳转不了,也没有报错。输入这个访问地址“http://localhost/login”,登录后,还是跳转到登录页面。
我把源码发给你了
老师你的登陆认证方法不对,按照你的步骤写随意更改用户名(无论是Test方法中还是CustomRealm类中),只要密码对了都可以登陆成功!
非常抱歉给您带来不好的体验!为了更深入的了解您的学习情况以及遇到的问题,您可以直接拨打投诉热线:
我们将在第一时间处理好您的问题!
关于
课程分类
百战程序员微信公众号
百战程序员微信小程序
©2014-2025百战汇智(北京)科技有限公司 All Rights Reserved 北京亦庄经济开发区科创十四街 赛蒂国际工业园网站维护:百战汇智(北京)科技有限公司 京公网安备 11011402011233号 京ICP备18060230号-3 营业执照 经营许可证:京B2-20212637