求救大神 shiro的SimpleAuthenticationInfo info = new SimpleAuthenticationInfo(username, password, getName());到底是如何进行密码校验的?

Jordan裔 发布于 2018/04/17 21:07
阅读 8K+
收藏 0

shiro的自定义realm里面用户校验方法里SimpleAuthenticationInfo info = new SimpleAuthenticationInfo(username, password, getName());

问题1:底层到底是如何进行密码校验的?

问题2:参数都没有传token,他是如何获取到token里面的密码并且加密,然后和参数password也就是数据库密码比较的? 

问题3:第三个参数getName(),代码好像都没有设置Realm的name值 ,怎么就获取到realm的name的?难道xml有关?

开源中国的大神们帮帮忙  不然又要失眠了 已经困扰几天了 网上找资料又看的迷迷糊糊的~~

加载中
1
rockjava
rockjava

用这字体写代码,眼睛没啥毛病?

Jordan裔
Jordan裔
。。。。。。这不是关键
0
OSC_IBOmLB
OSC_IBOmLB
q k li j li l ji g
0
米老头
发红包就解答
0
a307029786
a307029786

这个info,仅仅是你当前用户数据算出来的值,login会根据登录信息创建一个token,就是login方法的参数,shiro会校验info和token,只能帮你到这里 我看了很久了 忘记差不多了,调试下源码,不难的

小武快跑
小武快跑
回复 @Jordan裔 : 在吗
小武快跑
小武快跑
回复 @Jordan裔 : 请问 这个问题解决了吗 我也遇到了相同的问题, 不知道token到底是怎么传进去的
Jordan裔
Jordan裔
谢谢
0
河南热干面
河南热干面

所以说啊,这种框架使用的就是麻烦.写代码都写的糊里糊涂的.如果只是加密验证的话不知道为什么非要使用shiro.

0
l
lovewaz

参考下:SimpleCredentialsMatcher这个类,他加密处理是在这里

返回顶部
顶部