package com.ruoyi.common.utils;
|
|
import lombok.AccessLevel;
|
import lombok.NoArgsConstructor;
|
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
|
|
/**
|
* 安全服务工具类
|
*
|
* @author Long Li
|
*/
|
@NoArgsConstructor(access = AccessLevel.PRIVATE)
|
public class SecurityUtils {
|
|
/**
|
* 生成BCryptPasswordEncoder密码
|
*
|
* @param password 密码
|
* @return 加密字符串
|
*/
|
public static String encryptPassword(String password) {
|
BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
|
return passwordEncoder.encode(password);
|
}
|
|
/**
|
* 判断密码是否相同
|
*
|
* @param rawPassword 真实密码
|
* @param encodedPassword 加密后字符
|
* @return 结果
|
*/
|
public static boolean matchesPassword(String rawPassword, String encodedPassword) {
|
BCryptPasswordEncoder passwordEncoder = new BCryptPasswordEncoder();
|
return passwordEncoder.matches(rawPassword, encodedPassword);
|
}
|
|
/**
|
* 是否为管理员
|
*
|
* @param userId 用户ID
|
* @return 结果
|
*/
|
public static boolean isAdmin(Long userId) {
|
return userId != null && 1L == userId;
|
}
|
}
|