在项目中需要实现身份验证、权限授权等功能时,都可以使用Shiro来实现
- 使用shiro可以非常快速的完成认证、授权等功能的开发,降低系统成本。
- 较之Spring Security,Shiro在保持强大功能的同时,在简单性和灵活性方面拥有较为明显的优势
一、使用
添加依赖:
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring</artifactId>
<version>1.5.3</version>
</dependency>
写一个测试类:
@Test
public void demo(){
String pwd = "123";
String name = "MD5";
//盐值 -- 采用UUID生成的随机字符串来作为盐值
String salt = UUID.randomUUID().toString();
int count = 3;
//调用shiro的api来完成加密
//SimpleHash对象为加密后的对象
SimpleHash sh = new SimpleHash(
name, //加密的消息摘要名称
pwd, //加密的对象
salt, //盐值
count); //加密过程中迭代的次数
String pwdHash = sh.toHex(); //将加密后的结果转换为16进制
System.err.println(pwdHash);
}