摘要: 在创建账户及修改密码时直接把生成密码操作委托给PasswordHelper。 阅读全文
posted @ 2017-04-05 15:01 sky丶尕少 阅读(952) 评论(0) 推荐(0) 编辑
摘要: 在涉及到密码存储问题上,应该加密/生成密码摘要存储,而不是存储明文密码。比如之前的600w csdn账号泄露对用户可能造成很大损失,因此应加密/生成不可逆的摘要方式存储。 5.1 编码/解码 Shiro提供了base64和16进制字符串编码/解码的API支持,方便一些编码解码操作。Shiro内部的一 阅读全文
posted @ 2017-04-05 11:36 sky丶尕少 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 之前章节我们已经接触过一些INI配置规则了,如果大家使用过如Spring之类的IoC/DI容器的话,Shiro提供的INI配置也是非常类似的,即可以理解为是一个IoC/DI容器,但是区别在于它从一个根对象securityManager开始。 4.1 根对象SecurityManager 从之前的Sh 阅读全文
posted @ 2017-04-05 10:44 sky丶尕少 阅读(237) 评论(0) 推荐(0) 编辑
摘要: 授权,也叫访问控制,即在应用中控制谁能访问哪些资源(如访问页面/编辑数据/页面操作等)。在授权中需了解的几个关键对象:主体(Subject)、资源(Resource)、权限(Permission)、角色(Role)。 主体 主体,即访问应用的用户,在Shiro中使用Subject代表该用户。用户只有 阅读全文
posted @ 2017-04-05 10:37 sky丶尕少 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 1)提供的接口数量不完全相同。 assertEquals支持boolean,long,int等等java primitiveType变量。assertSame只支持Object。 2)比较的逻辑不同,结果可能不同。assertSame是对象直接比较。assertEquals能利用被比较对象提供的比较 阅读全文
posted @ 2017-04-05 09:26 sky丶尕少 阅读(466) 评论(0) 推荐(0) 编辑
摘要: 身份认证流程 流程如下: 1、首先调用Subject.login(token)进行登录,其会自动委托给Security Manager,调用之前必须通过SecurityUtils. setSecurityManager()设置; 2、SecurityManager负责真正的身份验证逻辑;它会委托给A 阅读全文
posted @ 2017-04-05 09:25 sky丶尕少 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 身份验证,即在应用中谁能证明他就是他本人。一般提供如他们的身份ID一些标识信息来表明他就是他本人,如提供身份证,用户名/密码来证明。 在shiro中,用户需要提供principals (身份)和credentials(证明)给shiro,从而应用能验证用户身份: principals:身份,即主体的 阅读全文
posted @ 2017-04-05 08:55 sky丶尕少 阅读(348) 评论(0) 推荐(0) 编辑
摘要: Shiro可以帮助我们完成:认证、授权、加密、会话管理、与Web集成、缓存等。这不就是我们想要的嘛,而且Shiro的API也是非常简单;其基本功能点如下图所示: Authentication:身份认证/登录,验证用户是不是拥有相应的身份; Authorization:授权,即权限验证,验证某个已认证 阅读全文
posted @ 2017-04-02 10:27 sky丶尕少 阅读(293) 评论(0) 推荐(0) 编辑
摘要: Long需要equals 判断。 long可以== 阅读全文
posted @ 2017-03-31 23:54 sky丶尕少 阅读(186) 评论(0) 推荐(0) 编辑
摘要: @Transactional之value value这里主要用来指定不同的事务管理器;主要用来满足在同一个系统中,存在不同的事务管理器。比如在Spring中,声明了两种事务管理器txManager1, txManager2. 然后,用户可以根据这个参数来根据需要指定特定的txManager. @Tr 阅读全文
posted @ 2017-03-30 16:24 sky丶尕少 阅读(13831) 评论(0) 推荐(1) 编辑