123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- package space.anyi.BI.util;
- import org.springframework.security.core.Authentication;
- import org.springframework.security.core.context.SecurityContextHolder;
- import space.anyi.BI.entity.LoginUserDetails;
- import java.util.Objects;
- /**
- * @ProjectName: BI
- * @FileName: SecurityUtils
- * @Author: 杨逸
- * @Data:2024/11/28 20:42
- * @Description:
- */
- public class SecurityUtils {
- /**
- * 获取用户
- **/
- public static LoginUserDetails getLoginUser()
- {
- Authentication authentication = getAuthentication();
- if (Objects.isNull(authentication)) {
- return null;
- }
- Object principal = authentication.getPrincipal();
- if (Objects.isNull(principal)) {
- return null;
- }
- //匿名用户
- if (principal instanceof String){
- return null;
- }
- return (LoginUserDetails) principal;
- }
- /**
- * 获取Authentication
- */
- public static Authentication getAuthentication() {
- return SecurityContextHolder.getContext().getAuthentication();
- }
- public static Boolean isAdmin(){
- String userRole = getLoginUser().getUser().getUserRole();
- return "管理员".equals(userRole);
- }
- public static Long getUserId() {
- return getLoginUser().getUser().getId();
- }
- }
|