shiro-04
2018-11-03 15:10 crow! 阅读(132) 评论(0) 编辑 收藏 举报角色认证操作
package cn.mldn.test; import org.apache.shiro.subject.Subject; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.config.IniSecurityManagerFactory; import org.apache.shiro.mgt.SecurityManager; import org.apache.shiro.util.Factory; public class TestLoginDemo { public static void main(String[] args) { // TODO Auto-generated method stub //取得了factory的接口对象, Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:shiro.ini"); // 取得里面的所有的认证信息。 SecurityManager securityManager = factory.getInstance() ; //利用一个专门的认证操作处理类,实现认证处理的具体的实现 SecurityUtils.setSecurityManager(securityManager); //获取用户名和密码认证的接口对象 Subject subject = SecurityUtils.getSubject() ; //定义一个Token,里面保存用户名密码 UsernamePasswordToken token = new UsernamePasswordToken("mldn","java") ; //实现用户登录处理 subject.login(token); // 包含指定的角色,则不抛出异常 subject.checkRole("dept"); // 包含指定的角色,则返回true System.out.println(subject.hasRole("dept")); System.out.println(subject.getPrincipal()); } }
shiro.ini
[users] admin=hello,member,dept mldn=java,dept,emp