shiro certification:
flow chart:
Quick Start mode using test cases:
Annotation sequence execution unit tests:
@BeforeClass -> @before -> @Test ->@After ->@AfterClass
Test code:
public class IsSpringbootShiroApplicationTests {
private DefaultSecurityManager defaultSecurityManager = new
DefaultSecurityManager();
private SimpleAccountRealm realm = new SimpleAccountRealm();
@Before
public void init (){
//初始化数据源
realm.addAccount("woxbwo","123");
realm.addAccount("zbbiex","456");
//构建SecurityManager的执行环境
defaultSecurityManager.setRealm(realm);
}
@Test
public void testAuthentication() {
SecurityUtils.setSecurityManager (defaultSecurityManager);
// Get the current theme application or the User
Subject Subject = SecurityUtils.getSubject ();
// username password
UsernamePasswordToken usernamePasswordToken = new new
UsernamePasswordToken ( "zbbiex", "456" );
subject.login (usernamePasswordToken) ;
// Get an authentication result
Boolean RES = subject.isAuthenticated ();
System.out.println ( "authentication result is:" + RES);
}
}
Test Results:
17:43:51.857 [main] DEBUG org.apache.shiro.session.mgt.AbstractValidatingSessionManager - No sessionValidationScheduler set. Attempting to create default instance.
17:43:51.857 [main] INFO org.apache.shiro.session.mgt.AbstractValidatingSessionManager - Enabling session validation scheduler...
17:43:51.863 [main] DEBUG org.apache.shiro.session.mgt.DefaultSessionManager - Creating new EIS record for new session instance [org.apache.shiro.session.mgt.SimpleSession,id=null]
认证结果为:true