Shiro安全框架03:自定义realm认证
2019-06-06 23:20
330 查看
第一步:在ini文件中配置
[code]myRealm= com.ctbu.MyRealm securityManager.realms=$myRealm
第二步:编写自定义realm
[code]public class MyRealm extends AuthorizingRealm { /** * 认证 */ @Override protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws AuthenticationException { //判断当前用户是否存在 //获取用户名 String username = (String)token.getPrincipal(); //从数据库中取出用户名和密码 String name ="hello"; String password = "1234"; //判断用户名是否相等 if (!name.equals(username)){ return null; } //这里的this.getName()获得的是类的名字 SimpleAuthenticationInfo info = new SimpleAuthenticationInfo(username, password, this.getName()); return info; } /** * 授权 */ @Override protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principalCollection) { return null; } }
第三步:运行认证
[code]public static void main(String[] args) { /** * 1.构建securityManager工厂 * 2.通过工厂创建securityManager * 3.将securit 4000 yManager设置到运行环境中 * 4.创建一个Subject实例 * 5.创建token令牌 * 6.用户登录 * 7.用户退出 */ // 1.构建securityManager工厂 IniSecurityManagerFactory factory = new IniSecurityManagerFactory("classpath:shiro.ini"); //2.通过工厂创建securityManager SecurityManager securityManager = factory.getInstance(); //3.将securityManager设置到运行环境中 SecurityUtils.setSecurityManager(securityManager); //4.创建一个Subject实例 Subject subject = SecurityUtils.getSubject(); //5.创建token令牌 UsernamePasswordToken token = new UsernamePasswordToken("hello", "1234"); try { //6.用户登录 subject.login(token); } catch (UnknownAccountException e) { System.out.println("账号不存在"); } catch (IncorrectCredentialsException e){ System.out.println("密码不正确"); } System.out.println("认证是否成功"+subject.isAuthenticated()); //7.用户退出 subject.logout(); System.out.println("认证是否成功"+subject.isAuthenticated()); }
相关文章推荐
- java安全框架-Shiro学习笔记(七)-自定义realm
- Shiro安全框架06:使用自定义realm进行授权
- AdminEAP框架-集成Shiro安全认证
- 安全认证框架-apache shiro研究心得
- 安全认证框架-Apache Shiro研究心得
- java安全框架-Shiro学习笔记(三)-权限认证
- Shiro安全框架04:使用散列密码进行认证
- shiro 权限框架自定义Realm
- 当shiro不进入自定义realm的权限认证方法时
- SpringMVC整合Shiro,Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能
- 安全认证框架-Apache Shiro研究心得
- Shiro Review——自定义Realm实现认证
- 简单又灵活的安全框架--Shiro构架和身份认证流程
- Shiro Review——自定义Realm实现认证
- Shiro入门6:自定义realm查询数据库进行认证
- 安全认证框架Shiro (一)- ini配置文件
- Spring Boot 整合Shiro安全认证框架
- shiro安全框架扩展教程--整合cas框架扩展自定义CasRealm
- shiro安全框架扩展教程--整合cas框架扩展自定义CasRealm
- shiro简介,认证,认证流程,自定义realm,散列算法