Shiro01 功能点框图、架构图、身份认证逻辑、身份认证代码实现(3)
- UID
- 1066743
|
Shiro01 功能点框图、架构图、身份认证逻辑、身份认证代码实现(3)
代码实现1、创建一个Maven工程,不同的maven工程即可,不需要时web工程
2、引入junit、shiro依赖
[url=][/url]
<dependency> <groupId>org.apache.shiro</groupId> <artifactId>shiro-core</artifactId> <version>1.4.0</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency>[url=][/url]
3、在resources目录下创建一个shiro.ini文件
3.1、项目目录结构
todo:贴图
3.2、shiro.ini内容
[users]fury=111111zeus=222222
4 测试类
[url=][/url]
package com.xunyji.shirotest.kaitao;import jdk.nashorn.internal.parser.Token;import org.apache.shiro.SecurityUtils;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;import org.junit.Test;/** * @author AltEnter * @create 2019-01-17 14:58 * @desc 认证 **/public class TestDemo01 { @Test public void testDemo01() {// 01 创建Realm IniRealm iniRealm = new IniRealm("classpath:shiro.ini");// 02 创建SecurityManager并将Realm设置到SecurityManager中 DefaultSecurityManager defaultSecurityManager = new DefaultSecurityManager(); defaultSecurityManager.setRealm(iniRealm);// 03 将SecurityManager设置到SecurityUtils中 SecurityUtils.setSecurityManager(defaultSecurityManager);// 04 从SecurityUtils中获取Subject Subject subject = SecurityUtils.getSubject();// 05 将用户名和用户密码封装成一个Token UsernamePasswordToken token = new UsernamePasswordToken("fury", "111111");// 06 通过Subject进行登录认证 subject.login(token);// 07 通过Subject判断登录认证结果 System.out.println(String.format("用户名fury和密码111111的用户的认证结果为:%s", subject.isAuthenticated())); } |
|
|
|
|
|