| 123456789101112131415161718192021222324 |
- package com.izouma.nineth.utils;
- import com.izouma.nineth.domain.User;
- import com.izouma.nineth.enums.AuthorityName;
- import com.izouma.nineth.security.JwtUser;
- import org.springframework.security.core.Authentication;
- import org.springframework.security.core.context.SecurityContextHolder;
- public class SecurityUtils {
- public static User getAuthenticatedUser() {
- Authentication authentication = SecurityContextHolder.getContext().getAuthentication();
- User user = null;
- if (authentication != null && authentication.getPrincipal() instanceof JwtUser) {
- user = ((JwtUser) authentication.getPrincipal()).getUser();
- }
- return user;
- }
- public static boolean hasRole(AuthorityName name) {
- User user = getAuthenticatedUser();
- if (null == user) return false;
- return user.getAuthorities().stream().anyMatch(a -> a.getName().equals(name.name()));
- }
- }
|