色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

shiro springboot vue

錢琪琛2年前8瀏覽0評論

Shiro是目前廣泛應用于Java企業開發的安全框架之一,它可以與SpringBoot和Vue等技術棧結合使用。下面我們來具體了解一下如何將Shiro、SpringBoot和Vue進行整合。

首先,我們需要在SpringBoot中引入Shiro的相關依賴:

<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring-boot-starter</artifactId>
<version>1.7.1</version>
</dependency>

在SpringBoot配置文件中配置Shiro相關信息:

shiro:
# 配置自定義Realm實現
realm-class: com.example.shirodemo.shiro.UserRealm
# 配置jwt
jwt:
secret: yourSecret
expireMillis: yourExpireTime

然后,我們需要實現自定義的Realm,根據實際業務邏輯來進行用戶鑒權。

public class UserRealm extends AuthorizingRealm {
@Autowired
private UserMapper userMapper;
@Override
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {
SimpleAuthorizationInfo authorizationInfo = new SimpleAuthorizationInfo();
User user = (User) principals.getPrimaryPrincipal();
authorizationInfo.addRoles(user.getRoles());
authorizationInfo.addStringPermissions(user.getPermissions());
return authorizationInfo;
}
@Override
protected AuthenticationInfo doGetAuthenticationInfo(AuthenticationToken token) throws AuthenticationException {
String username = (String) token.getPrincipal();
User user = userMapper.findByUsername(username);
if(user == null) {
throw new UnknownAccountException();
}
SimpleAuthenticationInfo authenticationInfo = new SimpleAuthenticationInfo(user, user.getPassword(), getName());
return authenticationInfo;
}
}

在Vue中使用Shiro可以基于Shiro提供的token進行用戶鑒權,并通過axios攔截器將該token帶到請求頭上,從而實現前后端聯動的用戶認證與授權。

import axios from 'axios'
axios.interceptors.request.use(
config =>{
if (localStorage.token) {
config.headers.Authorization = `Bearer ${localStorage.token}`
}
return config
},
error =>{
return Promise.reject(error)
})

通過以上步驟,我們就可以實現Shiro、SpringBoot和Vue的整合。Shiro提供了強大的用戶認證和授權功能,可以在企業級應用中保障系統的安全性和穩定性。