java SE shiro认证过程
来源:互联网 发布:sybase数据库实例教程 编辑:程序博客网 时间:2024/06/05 15:57
登录apache shiro官网:
http://shiro.apache.org/download.html#latestSource
下载源码包:
git clone https://github.com/apache/shiro.gitgit checkout shiro-root-1.3.2 -b shiro-root-1.3.2
得到下面的文件:
使用idea导入samples
使用quickstart进行学习
shiro.ini文件介绍
[users]用户名=密码,角色1,角色2。。。[roles]角色=权限
import org.apache.shiro.SecurityUtils;import org.apache.shiro.authc.*;import org.apache.shiro.config.IniSecurityManagerFactory;import org.apache.shiro.mgt.SecurityManager;import org.apache.shiro.session.Session;import org.apache.shiro.subject.Subject;import org.apache.shiro.util.Factory;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class HelloWorld { private static final Logger logger = LoggerFactory.getLogger(HelloWorld.class); public static void main(String[] args) { //1.获取权限管理器 Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro.ini"); SecurityManager securityManager = factory.getInstance(); //2.设置安全管理器 SecurityUtils.setSecurityManager(securityManager); //3.获取subject Subject currentUser = SecurityUtils.getSubject(); Session session = currentUser.getSession(); if(!currentUser.isAuthenticated()){ UsernamePasswordToken token = new UsernamePasswordToken("root","secret"); try { currentUser.login(token); logger.info("登录成功"); }catch (UnknownAccountException e){ logger.info("用户名错误"); }catch (IncorrectCredentialsException e){ logger.info("密码错误"); }catch (LockedAccountException e){ logger.info("用户locked"); }catch (AuthenticationException e){ logger.info("认证失败"); } } //判断用户是否拥有指定的角色 if(currentUser.hasRole("admin")){ logger.info("拥有角色"); }else{ logger.info("没有该角色"); } //判断用户是否拥有指定的权限 if(currentUser.isPermitted("winnebago:drive:eagle5")){ logger.info("拥有该权限"); }else { logger.info("没有该权限"); } //退出登录 currentUser.logout(); }}
阅读全文
0 0
- java SE shiro认证过程
- Apache Shiro 认证过程
- Apache Shiro 认证过程
- shiro认证过程
- shiro认证的过程
- shiro身份认证过程
- shiro认证过程
- shiro权限认证过程
- shiro认证授权过程
- Apache shiro(3)-认证过程
- shiro 认证配置和认证过程理解
- java shiro认证以及授权
- shiro的两种认证过程
- 浅谈shiro权限框架之认证过程
- Shiro简介及认证授权过程
- shiro认证
- shiro认证
- shiro认证
- 机器学习(1)--神经网络初探
- 遍历(一)jquery $().each和$.each()
- Centos运行Mysql因为内存不足进程被杀
- 无限极(树状)分类处理
- 56. Merge Intervals
- java SE shiro认证过程
- 重温Activity(二)
- 断点调试
- ajax请求报错调试
- Java中的NIO与Netty框架
- python的range()函数用法
- 工程计算7——函数逼近与曲线拟合
- window的方法
- tensorflow实例(2)--机器学习初试