项目开发中,后台系统尤为重要,最近就想搞一套能拿来直接使用的后台管理系统。
框架:
-
Shiro,Shiro作为安全框架,实现登录、登出、身份验证、授权、会话管理。
-
JWT,Json Web Token负责访问接口时的验证。
-
Vue,前端框架,因为本身不是前端开发,所以Clone了某位高人在github上的模版。写的非常好,简单易用。https://github.com/PanJiaChen/vue-admin-template
前端代码就是照葫芦画瓢,不过很多地方也google,还是很负责的,这里不多赘述。下面整理一下后端Shiro+JWT部分代码逻辑。
Shiro
@Configuration
public class ShiroConfig {
/*-------------------------------------------
| 哈 哈 |
============================================*/
/**
* 验证码验证filter
*
* @return
*/
@Bean(name = "captchaValidate")
public CaptchaValidateFilter captchaValidate() {
return new CaptchaValidateFilter();
}
/**
* jwt-filter
*
* @return
*/
@Bean(name = "jwt")
public JwtFilter jwtFilter() {
return new JwtFilter();
}
/**
* 登录时账户密码验证
*
* @return
*/
@Bean
public GeneralCredentialsMatcher generalCredentialsMatcher() {
return new GeneralCredentialsMatcher();
}
/**
* 账户验证,权限验证
*
* @return
*/
@Bean
public UserRealm myRealm() {
UserRealm userRealm = new UserRealm();
userRealm.setCredentialsMatcher(generalCredentialsMatcher());
return userRealm;
}
@Bean(name = "shiroFilterChainDefinition")
public DefaultShiroFilterChainDefinition shiroFilterChainDefinition() {
Defau