1. 什么是shiro?

    *Apache的强大灵活的开源安全框架。

    *认证、授权、企业会话管理、安全加密

2. shiro与Spring Security比较?

    Apache Shiro :简单、灵活,可脱离spring,粒度较粗。

    Spring Security:复杂、笨重,不可脱离spring,粒度更细。

3. shiro整体架构?

    2018-5-28 09:18:24

    4. shiro的认证授权简单测试。

/**
 * shiro认证授权测试
 * Created by fly on 2018-5-28.
 */
public class AuthenticationTest {

    SimpleAccountRealm simpleAccountRealm = new SimpleAccountRealm();

    @Before
    public void addUser(){
        simpleAccountRealm.addAccount("mark","123456", "admin","user");
    }

    @Test
    public void testAuthentication(){

        //1.构建SecurityManager环境
        DefaultSecurityManager defaultSecurityManager = new DefaultSecurityManager();
        //指定realm
        defaultSecurityManager.setRealm(simpleAccountRealm);
        //设置环境为defaultSecurityManager环境
        SecurityUtils.setSecurityManager(defaultSecurityManager);

        //2.主体提交认证请求
        Subject subject = SecurityUtils.getSubject();

        UsernamePasswordToken token = new UsernamePasswordToken("mark","123456");
        //登录认证
        subject.login(token);

        System.out.println("isAuthenticated:"+subject.isAuthenticated());
        //登出
//        subject.logout();
//
//        System.out.println("isAuthenticated:"+subject.isAuthenticated());
        //授权检查
        subject.checkRoles("admin");
        subject.checkRoles("admin","user");
    }
}

 5. shiro的内置realm:lniRealm         JdbcRealm    自定义realm

 6. shiro加密:HashedCredentialsMatcher、自定义realm、盐的使用。

 7. 

相关文章:

  • 2021-05-18
  • 2021-04-06
  • 2022-02-05
  • 2021-07-14
猜你喜欢
  • 2021-08-22
  • 2022-12-23
  • 2021-09-06
  • 2021-07-31
  • 2021-08-16
  • 2022-01-23
  • 2021-07-04
相关资源
相似解决方案