zoukankan      html  css  js  c++  java
  • shiro 简单的创建及验证

    package com.qr.shiro;

    import org.apache.shiro.SecurityUtils;
    import org.apache.shiro.authc.IncorrectCredentialsException;
    import org.apache.shiro.authc.UnknownAccountException;
    import org.apache.shiro.authc.UsernamePasswordToken;
    import org.apache.shiro.mgt.DefaultSecurityManager;
    import org.apache.shiro.realm.text.IniRealm;
    import org.apache.shiro.subject.Subject;
    /**

    * @author LiuQi
    */
    public class ShiroDemo {
    public static void main(String[] args) {
    //1.创建安全管理器对象
    DefaultSecurityManager defaultSecurityManager = new DefaultSecurityManager();
    //2.给安全管理器设置Realm
    defaultSecurityManager.setRealm(new IniRealm("classpath:shiro.ini"));
    //3.SecurityUtils 给全局安全工具类设置安全管理器
    SecurityUtils.setSecurityManager(defaultSecurityManager);
    //4.关键对象 subject 主体
    Subject subject = SecurityUtils.getSubject();
    //5.创建令牌
    UsernamePasswordToken token = new UsernamePasswordToken("xiaobai", "123456");


    try {
    System.out.println("认证状态:" + subject.isAuthenticated());

    subject.login(token); //用户认证

    System.out.println("认证状态:" + subject.isAuthenticated());

    System.out.println("认证通过");
    } catch (UnknownAccountException e) {

    e.printStackTrace();
    System.out.println("该用户名不存在~~~");
    System.out.println("认证失败");
    }catch (IncorrectCredentialsException e){
    e.printStackTrace();
    System.out.println("该密码不存在~~~");
    System.out.println("认证失败");
    }


    }
    }
  • 相关阅读:
    Nullable<T>、Nullable、null、?修饰符的区别
    使用EF CodeFirst连接MySql数据库
    C# 在项目中配置Log4net
    我的Visual Studio必用工具
    面向对象原则之一 接口隔离原则
    面向对象原则之一 依赖倒置原则
    C# ABP
    面向对象原则之一 开放封闭原则(开闭原则)
    面向对象原则之一 单一职责原则
    C# Owin初探 概念理解(一)
  • 原文地址:https://www.cnblogs.com/LQ970811/p/12986138.html
Copyright © 2011-2022 走看看