Class SecurityUtils

java.lang.Object
com.codeupsoft.component.security.utils.SecurityUtils

public class SecurityUtils extends Object
安全工具类.

提供便捷的方法获取当前登录用户信息,包括用户ID、用户名等. 基于Spring Security的安全上下文实现,线程安全.

Author:
Liu,Dongdong
  • Constructor Details

    • SecurityUtils

      public SecurityUtils()
  • Method Details

    • getAuthentication

      public static org.springframework.security.core.Authentication getAuthentication()
      获取当前认证对象.

      从Spring Security的安全上下文中获取当前线程的认证信息.

      Returns:
      认证对象,如果未认证则返回null
    • getLoginUser

      public static LoginUser getLoginUser()
      获取当前登录用户信息.

      从认证对象中提取登录用户信息.

      Returns:
      登录用户信息,如果未登录或principal不是LoginUser类型则返回null
    • getLoginUserExt

      public static <T extends LoginUser> T getLoginUserExt()
      获取当前登录用户信息(支持扩展类型).

      从认证对象中提取登录用户信息,支持返回LoginUser的子类类型.

      Type Parameters:
      T - LoginUser的子类类型
      Returns:
      登录用户信息,如果未登录或principal不是LoginUser类型则返回null
    • getUserId

      public static Long getUserId()
      获取当前登录用户ID.

      便捷方法,直接获取当前用户的用户ID.

      Returns:
      用户ID,如果未登录则返回null
    • getUsername

      public static String getUsername()
      获取当前登录用户名.

      便捷方法,直接获取当前用户的用户名.

      Returns:
      用户名,如果未登录则返回null
    • isAuthenticated

      public static boolean isAuthenticated()
      检查当前用户是否已认证.

      判断当前用户是否已通过身份验证.

      Returns:
      如果已认证返回true,否则返回false
    • hasPermission

      public static boolean hasPermission(String permission)
      检查当前用户是否拥有指定权限.

      便捷方法,直接检查当前用户是否拥有指定权限.

      Parameters:
      permission - 权限标识
      Returns:
      如果拥有权限返回true,否则返回false
    • hasRole

      public static boolean hasRole(String role)
      检查当前用户是否拥有指定角色.

      便捷方法,直接检查当前用户是否拥有指定角色.

      Parameters:
      role - 角色标识
      Returns:
      如果拥有角色返回true,否则返回false