diff --git a/kernel-d-auth/auth-sdk/pom.xml b/kernel-d-auth/auth-sdk/pom.xml
index 1c6161b59..6795a11db 100644
--- a/kernel-d-auth/auth-sdk/pom.xml
+++ b/kernel-d-auth/auth-sdk/pom.xml
@@ -32,6 +32,14 @@
7.0.1
+
+
+
+ cn.stylefeng.roses
+ security-api
+ 7.0.1
+
+
diff --git a/kernel-d-auth/auth-sdk/src/main/java/cn/stylefeng/roses/kernel/auth/auth/AuthServiceImpl.java b/kernel-d-auth/auth-sdk/src/main/java/cn/stylefeng/roses/kernel/auth/auth/AuthServiceImpl.java
index 27829b386..5a9374fa6 100644
--- a/kernel-d-auth/auth-sdk/src/main/java/cn/stylefeng/roses/kernel/auth/auth/AuthServiceImpl.java
+++ b/kernel-d-auth/auth-sdk/src/main/java/cn/stylefeng/roses/kernel/auth/auth/AuthServiceImpl.java
@@ -18,12 +18,12 @@ import cn.stylefeng.roses.kernel.jwt.api.exception.enums.JwtExceptionEnum;
import cn.stylefeng.roses.kernel.jwt.api.pojo.payload.DefaultJwtPayload;
import cn.stylefeng.roses.kernel.message.api.expander.WebSocketConfigExpander;
import cn.stylefeng.roses.kernel.rule.util.HttpServletUtil;
+import cn.stylefeng.roses.kernel.security.api.CaptchaApi;
import cn.stylefeng.roses.kernel.system.api.LoginLogServiceApi;
import cn.stylefeng.roses.kernel.system.api.UserServiceApi;
import cn.stylefeng.roses.kernel.system.api.enums.UserStatusEnum;
import cn.stylefeng.roses.kernel.system.api.expander.SystemConfigExpander;
import cn.stylefeng.roses.kernel.system.api.pojo.user.UserLoginInfoDTO;
-import cn.stylefeng.roses.kernel.validator.api.CaptchaApi;
import cn.stylefeng.roses.kernel.validator.api.exception.enums.ValidatorExceptionEnum;
import org.springframework.stereotype.Service;
diff --git a/kernel-d-security/pom.xml b/kernel-d-security/pom.xml
index eab67d440..e81f41715 100644
--- a/kernel-d-security/pom.xml
+++ b/kernel-d-security/pom.xml
@@ -17,6 +17,9 @@
security-api
+ security-sdk-black-white
+ security-sdk-captcha
+ security-sdk-count
security-sdk-xss
security-spring-boot-starter
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/BlackListApi.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/BlackListApi.java
similarity index 95%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/BlackListApi.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/BlackListApi.java
index 0b6088346..cf4f798aa 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/BlackListApi.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/BlackListApi.java
@@ -1,4 +1,4 @@
-package cn.stylefeng.roses.kernel.validator.api;
+package cn.stylefeng.roses.kernel.security.api;
import java.util.Collection;
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/CaptchaApi.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/CaptchaApi.java
similarity index 87%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/CaptchaApi.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/CaptchaApi.java
index 242481d19..84a522ad9 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/CaptchaApi.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/CaptchaApi.java
@@ -1,6 +1,6 @@
-package cn.stylefeng.roses.kernel.validator.api;
+package cn.stylefeng.roses.kernel.security.api;
-import cn.stylefeng.roses.kernel.validator.api.pojo.EasyCaptcha;
+import cn.stylefeng.roses.kernel.security.api.pojo.EasyCaptcha;
/**
* 图形验证码Api
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/CountValidatorApi.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/CountValidatorApi.java
similarity index 86%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/CountValidatorApi.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/CountValidatorApi.java
index 254290a92..87a1533e8 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/CountValidatorApi.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/CountValidatorApi.java
@@ -1,7 +1,6 @@
-package cn.stylefeng.roses.kernel.validator.api;
+package cn.stylefeng.roses.kernel.security.api;
-
-import cn.stylefeng.roses.kernel.validator.api.exception.CountValidateException;
+import cn.stylefeng.roses.kernel.security.api.exception.CountValidateException;
/**
* 计数and校验API
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/WhiteListApi.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/WhiteListApi.java
similarity index 95%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/WhiteListApi.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/WhiteListApi.java
index 842e355c5..a41fdbc6a 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/WhiteListApi.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/WhiteListApi.java
@@ -1,4 +1,4 @@
-package cn.stylefeng.roses.kernel.validator.api;
+package cn.stylefeng.roses.kernel.security.api;
import java.util.Collection;
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/constants/CaptchaConstants.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/constants/CaptchaConstants.java
similarity index 80%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/constants/CaptchaConstants.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/constants/CaptchaConstants.java
index f577acb3f..355304418 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/constants/CaptchaConstants.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/constants/CaptchaConstants.java
@@ -1,4 +1,4 @@
-package cn.stylefeng.roses.kernel.validator.api.constants;
+package cn.stylefeng.roses.kernel.security.api.constants;
/**
* 图形验证码模块的常量
diff --git a/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/constants/CounterConstants.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/constants/CounterConstants.java
new file mode 100644
index 000000000..1eea6e1e5
--- /dev/null
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/constants/CounterConstants.java
@@ -0,0 +1,36 @@
+package cn.stylefeng.roses.kernel.security.api.constants;
+
+/**
+ * 黑白名单和计数器的常量
+ *
+ * @author fengshuonan
+ * @date 2021/3/14 17:29
+ */
+public interface CounterConstants {
+
+ /**
+ * 计数校验用的 缓存前缀标识
+ */
+ String COUNT_VALIDATE_CACHE_KEY_PREFIX = "COUNT_VALIDATE";
+
+ /**
+ * 黑名单 缓存前缀标识
+ */
+ String BLACK_LIST_CACHE_KEY_PREFIX = "BLACK_LIST";
+
+ /**
+ * 白名单 缓存前缀标识
+ */
+ String WHITE_LIST_CACHE_KEY_PREFIX = "WHITE_LIST";
+
+ /**
+ * 计数校验用的 计数当时的秒数
+ */
+ String RECORD_TIME_SECONDS = "RECORD_TIME_SECONDS";
+
+ /**
+ * 计数校验用的 时间窗内的次数
+ */
+ String COUNT_NUMBER = "COUNT_NUMBER";
+
+}
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/CountValidateException.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/CountValidateException.java
similarity index 59%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/CountValidateException.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/CountValidateException.java
index 930fbf249..82414bc4e 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/CountValidateException.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/CountValidateException.java
@@ -1,9 +1,9 @@
-package cn.stylefeng.roses.kernel.validator.api.exception;
+package cn.stylefeng.roses.kernel.security.api.exception;
import cn.hutool.core.util.StrUtil;
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException;
-import cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants;
+import cn.stylefeng.roses.kernel.security.api.constants.SecurityConstants;
/**
* 计数器校验异常
@@ -14,11 +14,11 @@ import cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants;
public class CountValidateException extends ServiceException {
public CountValidateException(AbstractExceptionEnum exception, Object... params) {
- super(ValidatorConstants.VALIDATOR_MODULE_NAME, exception.getErrorCode(), StrUtil.format(exception.getUserTip(), params));
+ super(SecurityConstants.SECURITY_MODULE_NAME, exception.getErrorCode(), StrUtil.format(exception.getUserTip(), params));
}
public CountValidateException(AbstractExceptionEnum exception) {
- super(ValidatorConstants.VALIDATOR_MODULE_NAME, exception);
+ super(SecurityConstants.SECURITY_MODULE_NAME, exception);
}
}
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/XssFilterException.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/XssFilterException.java
similarity index 58%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/XssFilterException.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/XssFilterException.java
index b0c924b4e..b8c9a4b24 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/XssFilterException.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/XssFilterException.java
@@ -1,9 +1,9 @@
-package cn.stylefeng.roses.kernel.validator.api.exception;
+package cn.stylefeng.roses.kernel.security.api.exception;
import cn.hutool.core.util.StrUtil;
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
import cn.stylefeng.roses.kernel.rule.exception.base.ServiceException;
-import cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants;
+import cn.stylefeng.roses.kernel.security.api.constants.SecurityConstants;
/**
* XSS过滤异常
@@ -14,11 +14,11 @@ import cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants;
public class XssFilterException extends ServiceException {
public XssFilterException(AbstractExceptionEnum exception, Object... params) {
- super(ValidatorConstants.VALIDATOR_MODULE_NAME, exception.getErrorCode(), StrUtil.format(exception.getUserTip(), params));
+ super(SecurityConstants.SECURITY_MODULE_NAME, exception.getErrorCode(), StrUtil.format(exception.getUserTip(), params));
}
public XssFilterException(AbstractExceptionEnum exception) {
- super(ValidatorConstants.VALIDATOR_MODULE_NAME, exception);
+ super(SecurityConstants.SECURITY_MODULE_NAME, exception);
}
}
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/enums/CountValidateExceptionEnum.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/enums/CountValidateExceptionEnum.java
similarity index 69%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/enums/CountValidateExceptionEnum.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/enums/CountValidateExceptionEnum.java
index 5c1a07117..595db5034 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/enums/CountValidateExceptionEnum.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/enums/CountValidateExceptionEnum.java
@@ -1,8 +1,8 @@
-package cn.stylefeng.roses.kernel.validator.api.exception.enums;
+package cn.stylefeng.roses.kernel.security.api.exception.enums;
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
-import cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants;
+import cn.stylefeng.roses.kernel.security.api.constants.SecurityConstants;
import lombok.Getter;
/**
@@ -17,12 +17,12 @@ public enum CountValidateExceptionEnum implements AbstractExceptionEnum {
/**
* 中断执行
*/
- INTERRUPT_EXECUTION(RuleConstants.BUSINESS_ERROR_TYPE_CODE + ValidatorConstants.VALIDATOR_EXCEPTION_STEP_CODE + "01", "满足自定义策略要求,程序已中断执行!"),
+ INTERRUPT_EXECUTION(RuleConstants.BUSINESS_ERROR_TYPE_CODE + SecurityConstants.SECURITY_EXCEPTION_STEP_CODE + "01", "满足自定义策略要求,程序已中断执行!"),
/**
* 限流错误
*/
- TRAFFIC_LIMIT_ERROR(RuleConstants.BUSINESS_ERROR_TYPE_CODE + ValidatorConstants.VALIDATOR_EXCEPTION_STEP_CODE + "02", "已触发限流机制,请稍后重新访问!");
+ TRAFFIC_LIMIT_ERROR(RuleConstants.BUSINESS_ERROR_TYPE_CODE + SecurityConstants.SECURITY_EXCEPTION_STEP_CODE + "02", "已触发限流机制,请稍后重新访问!");
/**
* 错误编码
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/enums/XssFilterExceptionEnum.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/enums/XssFilterExceptionEnum.java
similarity index 66%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/enums/XssFilterExceptionEnum.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/enums/XssFilterExceptionEnum.java
index 955b377d4..7754d9212 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/exception/enums/XssFilterExceptionEnum.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/exception/enums/XssFilterExceptionEnum.java
@@ -1,8 +1,8 @@
-package cn.stylefeng.roses.kernel.validator.api.exception.enums;
+package cn.stylefeng.roses.kernel.security.api.exception.enums;
import cn.stylefeng.roses.kernel.rule.constants.RuleConstants;
import cn.stylefeng.roses.kernel.rule.exception.AbstractExceptionEnum;
-import cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants;
+import cn.stylefeng.roses.kernel.security.api.constants.SecurityConstants;
import lombok.Getter;
/**
@@ -17,7 +17,7 @@ public enum XssFilterExceptionEnum implements AbstractExceptionEnum {
/**
* XSS初始化配置为空
*/
- CONFIG_IS_NULL(RuleConstants.BUSINESS_ERROR_TYPE_CODE + ValidatorConstants.VALIDATOR_EXCEPTION_STEP_CODE + "11", "XSS初始化配置为空,请检查XSS过滤器配置是否正确!");
+ CONFIG_IS_NULL(RuleConstants.BUSINESS_ERROR_TYPE_CODE + SecurityConstants.SECURITY_EXCEPTION_STEP_CODE + "11", "XSS初始化配置为空,请检查XSS过滤器配置是否正确!");
/**
* 错误编码
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/pojo/EasyCaptcha.java b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/pojo/EasyCaptcha.java
similarity index 85%
rename from kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/pojo/EasyCaptcha.java
rename to kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/pojo/EasyCaptcha.java
index 5ad39d2c4..6c22747a3 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/pojo/EasyCaptcha.java
+++ b/kernel-d-security/security-api/src/main/java/cn/stylefeng/roses/kernel/security/api/pojo/EasyCaptcha.java
@@ -1,4 +1,4 @@
-package cn.stylefeng.roses.kernel.validator.api.pojo;
+package cn.stylefeng.roses.kernel.security.api.pojo;
import lombok.Builder;
import lombok.Data;
diff --git a/kernel-d-validator/validator-sdk-black-white/README.md b/kernel-d-security/security-sdk-black-white/README.md
similarity index 100%
rename from kernel-d-validator/validator-sdk-black-white/README.md
rename to kernel-d-security/security-sdk-black-white/README.md
diff --git a/kernel-d-validator/validator-sdk-black-white/pom.xml b/kernel-d-security/security-sdk-black-white/pom.xml
similarity index 86%
rename from kernel-d-validator/validator-sdk-black-white/pom.xml
rename to kernel-d-security/security-sdk-black-white/pom.xml
index d9fdf6454..536c6d260 100644
--- a/kernel-d-validator/validator-sdk-black-white/pom.xml
+++ b/kernel-d-security/security-sdk-black-white/pom.xml
@@ -6,18 +6,18 @@
cn.stylefeng.roses
- kernel-d-validator
+ kernel-d-security
7.0.1
- validator-sdk-black-white
+ security-sdk-black-white
-
+
cn.stylefeng.roses
- validator-api
+ security-api
7.0.1
diff --git a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/BlackListService.java b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/BlackListService.java
similarity index 89%
rename from kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/BlackListService.java
rename to kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/BlackListService.java
index d5af9944f..ec71f1510 100644
--- a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/BlackListService.java
+++ b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/BlackListService.java
@@ -1,7 +1,7 @@
-package cn.stylefeng.roses.kemel.validator.blackwhite;
+package cn.stylefeng.roses.kemel.security.blackwhite;
import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi;
-import cn.stylefeng.roses.kernel.validator.api.BlackListApi;
+import cn.stylefeng.roses.kernel.security.api.BlackListApi;
import java.util.Collection;
diff --git a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/WhiteListService.java b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/WhiteListService.java
similarity index 89%
rename from kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/WhiteListService.java
rename to kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/WhiteListService.java
index c798c0e3d..44c61dff8 100644
--- a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/WhiteListService.java
+++ b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/WhiteListService.java
@@ -1,7 +1,7 @@
-package cn.stylefeng.roses.kemel.validator.blackwhite;
+package cn.stylefeng.roses.kemel.security.blackwhite;
import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi;
-import cn.stylefeng.roses.kernel.validator.api.WhiteListApi;
+import cn.stylefeng.roses.kernel.security.api.WhiteListApi;
import java.util.Collection;
diff --git a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/BlackListMemoryCache.java b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/BlackListMemoryCache.java
similarity index 67%
rename from kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/BlackListMemoryCache.java
rename to kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/BlackListMemoryCache.java
index 889199098..86960f066 100644
--- a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/BlackListMemoryCache.java
+++ b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/BlackListMemoryCache.java
@@ -1,9 +1,8 @@
-package cn.stylefeng.roses.kemel.validator.blackwhite.cache;
+package cn.stylefeng.roses.kemel.security.blackwhite.cache;
import cn.hutool.cache.impl.TimedCache;
import cn.stylefeng.roses.kernel.cache.memory.AbstractMemoryCacheOperator;
-
-import static cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants.BLACK_LIST_CACHE_KEY_PREFIX;
+import cn.stylefeng.roses.kernel.security.api.constants.CounterConstants;
/**
* 黑名单用户的缓存
@@ -19,7 +18,7 @@ public class BlackListMemoryCache extends AbstractMemoryCacheOperator {
@Override
public String getCommonKeyPrefix() {
- return BLACK_LIST_CACHE_KEY_PREFIX;
+ return CounterConstants.BLACK_LIST_CACHE_KEY_PREFIX;
}
}
diff --git a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/BlackListRedisCache.java b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/BlackListRedisCache.java
similarity index 68%
rename from kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/BlackListRedisCache.java
rename to kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/BlackListRedisCache.java
index 4f7b97d0c..7963f3f40 100644
--- a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/BlackListRedisCache.java
+++ b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/BlackListRedisCache.java
@@ -1,9 +1,9 @@
-package cn.stylefeng.roses.kemel.validator.blackwhite.cache;
+package cn.stylefeng.roses.kemel.security.blackwhite.cache;
import cn.stylefeng.roses.kernel.cache.redis.AbstractRedisCacheOperator;
+import cn.stylefeng.roses.kernel.security.api.constants.CounterConstants;
import org.springframework.data.redis.core.RedisTemplate;
-import static cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants.BLACK_LIST_CACHE_KEY_PREFIX;
/**
* 黑名单用户的缓存
@@ -19,7 +19,7 @@ public class BlackListRedisCache extends AbstractRedisCacheOperator {
@Override
public String getCommonKeyPrefix() {
- return BLACK_LIST_CACHE_KEY_PREFIX;
+ return CounterConstants.BLACK_LIST_CACHE_KEY_PREFIX;
}
}
diff --git a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/WhiteListMemoryCache.java b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/WhiteListMemoryCache.java
similarity index 67%
rename from kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/WhiteListMemoryCache.java
rename to kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/WhiteListMemoryCache.java
index dff99a50b..24487379a 100644
--- a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/WhiteListMemoryCache.java
+++ b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/WhiteListMemoryCache.java
@@ -1,9 +1,8 @@
-package cn.stylefeng.roses.kemel.validator.blackwhite.cache;
+package cn.stylefeng.roses.kemel.security.blackwhite.cache;
import cn.hutool.cache.impl.TimedCache;
import cn.stylefeng.roses.kernel.cache.memory.AbstractMemoryCacheOperator;
-
-import static cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants.WHITE_LIST_CACHE_KEY_PREFIX;
+import cn.stylefeng.roses.kernel.security.api.constants.CounterConstants;
/**
* 白名单的缓存
@@ -19,7 +18,7 @@ public class WhiteListMemoryCache extends AbstractMemoryCacheOperator {
@Override
public String getCommonKeyPrefix() {
- return WHITE_LIST_CACHE_KEY_PREFIX;
+ return CounterConstants.WHITE_LIST_CACHE_KEY_PREFIX;
}
}
diff --git a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/WhiteListRedisCache.java b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/WhiteListRedisCache.java
similarity index 67%
rename from kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/WhiteListRedisCache.java
rename to kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/WhiteListRedisCache.java
index 6758d3a5f..c80ea7b97 100644
--- a/kernel-d-validator/validator-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/validator/blackwhite/cache/WhiteListRedisCache.java
+++ b/kernel-d-security/security-sdk-black-white/src/main/java/cn/stylefeng/roses/kemel/security/blackwhite/cache/WhiteListRedisCache.java
@@ -1,9 +1,9 @@
-package cn.stylefeng.roses.kemel.validator.blackwhite.cache;
+package cn.stylefeng.roses.kemel.security.blackwhite.cache;
import cn.hutool.cache.impl.TimedCache;
import cn.stylefeng.roses.kernel.cache.memory.AbstractMemoryCacheOperator;
+import cn.stylefeng.roses.kernel.security.api.constants.CounterConstants;
-import static cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants.WHITE_LIST_CACHE_KEY_PREFIX;
/**
* 白名单的缓存
@@ -19,7 +19,7 @@ public class WhiteListRedisCache extends AbstractMemoryCacheOperator {
@Override
public String getCommonKeyPrefix() {
- return WHITE_LIST_CACHE_KEY_PREFIX;
+ return CounterConstants.WHITE_LIST_CACHE_KEY_PREFIX;
}
}
diff --git a/kernel-d-validator/validator-sdk-captcha/README.md b/kernel-d-security/security-sdk-captcha/README.md
similarity index 100%
rename from kernel-d-validator/validator-sdk-captcha/README.md
rename to kernel-d-security/security-sdk-captcha/README.md
diff --git a/kernel-d-validator/validator-sdk-captcha/pom.xml b/kernel-d-security/security-sdk-captcha/pom.xml
similarity index 88%
rename from kernel-d-validator/validator-sdk-captcha/pom.xml
rename to kernel-d-security/security-sdk-captcha/pom.xml
index 30bba5e00..8a88e5871 100644
--- a/kernel-d-validator/validator-sdk-captcha/pom.xml
+++ b/kernel-d-security/security-sdk-captcha/pom.xml
@@ -6,18 +6,18 @@
cn.stylefeng.roses
- kernel-d-validator
+ kernel-d-security
7.0.1
- validator-sdk-captcha
+ security-sdk-captcha
-
+
cn.stylefeng.roses
- validator-api
+ security-api
7.0.1
diff --git a/kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/CaptchaService.java b/kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/CaptchaService.java
similarity index 88%
rename from kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/CaptchaService.java
rename to kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/CaptchaService.java
index 832833e68..4373460e4 100644
--- a/kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/CaptchaService.java
+++ b/kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/CaptchaService.java
@@ -1,10 +1,10 @@
-package cn.stylefeng.roses.kemel.validator.captcha;
+package cn.stylefeng.roses.kemel.security.captcha;
import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil;
import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi;
-import cn.stylefeng.roses.kernel.validator.api.CaptchaApi;
-import cn.stylefeng.roses.kernel.validator.api.pojo.EasyCaptcha;
+import cn.stylefeng.roses.kernel.security.api.CaptchaApi;
+import cn.stylefeng.roses.kernel.security.api.pojo.EasyCaptcha;
import com.wf.captcha.SpecCaptcha;
/**
diff --git a/kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/cache/CaptchaMemoryCache.java b/kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/cache/CaptchaMemoryCache.java
similarity index 68%
rename from kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/cache/CaptchaMemoryCache.java
rename to kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/cache/CaptchaMemoryCache.java
index 14defab2d..f2d67e2d6 100644
--- a/kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/cache/CaptchaMemoryCache.java
+++ b/kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/cache/CaptchaMemoryCache.java
@@ -1,9 +1,8 @@
-package cn.stylefeng.roses.kemel.validator.captcha.cache;
+package cn.stylefeng.roses.kemel.security.captcha.cache;
import cn.hutool.cache.impl.TimedCache;
import cn.stylefeng.roses.kernel.cache.memory.AbstractMemoryCacheOperator;
-
-import static cn.stylefeng.roses.kernel.validator.api.constants.CaptchaConstants.CAPTCHA_CACHE_KEY_PREFIX;
+import cn.stylefeng.roses.kernel.security.api.constants.CaptchaConstants;
/**
* 图形验证码缓存
@@ -19,6 +18,7 @@ public class CaptchaMemoryCache extends AbstractMemoryCacheOperator {
@Override
public String getCommonKeyPrefix() {
- return CAPTCHA_CACHE_KEY_PREFIX;
+ return CaptchaConstants.CAPTCHA_CACHE_KEY_PREFIX;
}
+
}
diff --git a/kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/cache/CaptchaRedisCache.java b/kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/cache/CaptchaRedisCache.java
similarity index 68%
rename from kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/cache/CaptchaRedisCache.java
rename to kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/cache/CaptchaRedisCache.java
index 26ad0ac6b..e477281ec 100644
--- a/kernel-d-validator/validator-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/validator/captcha/cache/CaptchaRedisCache.java
+++ b/kernel-d-security/security-sdk-captcha/src/main/java/cn/stylefeng/roses/kemel/security/captcha/cache/CaptchaRedisCache.java
@@ -1,9 +1,8 @@
-package cn.stylefeng.roses.kemel.validator.captcha.cache;
+package cn.stylefeng.roses.kemel.security.captcha.cache;
import cn.hutool.cache.impl.TimedCache;
import cn.stylefeng.roses.kernel.cache.memory.AbstractMemoryCacheOperator;
-
-import static cn.stylefeng.roses.kernel.validator.api.constants.CaptchaConstants.CAPTCHA_CACHE_KEY_PREFIX;
+import cn.stylefeng.roses.kernel.security.api.constants.CaptchaConstants;
/**
* 图形验证码缓存
@@ -19,7 +18,7 @@ public class CaptchaRedisCache extends AbstractMemoryCacheOperator {
@Override
public String getCommonKeyPrefix() {
- return CAPTCHA_CACHE_KEY_PREFIX;
+ return CaptchaConstants.CAPTCHA_CACHE_KEY_PREFIX;
}
}
diff --git a/kernel-d-validator/validator-sdk-count/README.md b/kernel-d-security/security-sdk-count/README.md
similarity index 100%
rename from kernel-d-validator/validator-sdk-count/README.md
rename to kernel-d-security/security-sdk-count/README.md
diff --git a/kernel-d-validator/validator-sdk-count/pom.xml b/kernel-d-security/security-sdk-count/pom.xml
similarity index 86%
rename from kernel-d-validator/validator-sdk-count/pom.xml
rename to kernel-d-security/security-sdk-count/pom.xml
index 5a231050d..1f9aa0654 100644
--- a/kernel-d-validator/validator-sdk-count/pom.xml
+++ b/kernel-d-security/security-sdk-count/pom.xml
@@ -6,18 +6,18 @@
cn.stylefeng.roses
- kernel-d-validator
+ kernel-d-security
7.0.1
- validator-sdk-count
+ security-sdk-count
-
+
cn.stylefeng.roses
- validator-api
+ security-api
7.0.1
diff --git a/kernel-d-validator/validator-sdk-count/src/main/java/cn/stylefeng/roses/kemel/validator/count/DefaultCountValidator.java b/kernel-d-security/security-sdk-count/src/main/java/cn/stylefeng/roses/kemel/security/count/DefaultCountValidator.java
similarity index 76%
rename from kernel-d-validator/validator-sdk-count/src/main/java/cn/stylefeng/roses/kemel/validator/count/DefaultCountValidator.java
rename to kernel-d-security/security-sdk-count/src/main/java/cn/stylefeng/roses/kemel/security/count/DefaultCountValidator.java
index 78522ced0..e4f4c5460 100644
--- a/kernel-d-validator/validator-sdk-count/src/main/java/cn/stylefeng/roses/kemel/validator/count/DefaultCountValidator.java
+++ b/kernel-d-security/security-sdk-count/src/main/java/cn/stylefeng/roses/kemel/security/count/DefaultCountValidator.java
@@ -1,12 +1,12 @@
-package cn.stylefeng.roses.kemel.validator.count;
+package cn.stylefeng.roses.kemel.security.count;
import cn.hutool.core.convert.Convert;
import cn.stylefeng.roses.kernel.cache.api.CacheOperatorApi;
import cn.stylefeng.roses.kernel.cache.api.constants.CacheConstants;
-import cn.stylefeng.roses.kernel.validator.api.CountValidatorApi;
-import cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants;
-import cn.stylefeng.roses.kernel.validator.api.exception.CountValidateException;
-import cn.stylefeng.roses.kernel.validator.api.exception.enums.CountValidateExceptionEnum;
+import cn.stylefeng.roses.kernel.security.api.CountValidatorApi;
+import cn.stylefeng.roses.kernel.security.api.constants.CounterConstants;
+import cn.stylefeng.roses.kernel.security.api.exception.CountValidateException;
+import cn.stylefeng.roses.kernel.security.api.exception.enums.CountValidateExceptionEnum;
/**
* 默认的计数校验器
@@ -29,10 +29,10 @@ public class DefaultCountValidator implements CountValidatorApi {
long currentTimeSeconds = System.currentTimeMillis() / 1000;
// 上一次操作时间秒数的缓存key COUNT_VALIDATE:key:RECORD_SECONDS
- String recordTimeSecondsKey = ValidatorConstants.COUNT_VALIDATE_CACHE_KEY_PREFIX + CacheConstants.CACHE_DELIMITER + key + CacheConstants.CACHE_DELIMITER + ValidatorConstants.RECORD_TIME_SECONDS;
+ String recordTimeSecondsKey = CounterConstants.COUNT_VALIDATE_CACHE_KEY_PREFIX + CacheConstants.CACHE_DELIMITER + key + CacheConstants.CACHE_DELIMITER + CounterConstants.RECORD_TIME_SECONDS;
// 上一次执行次数的记录缓存key COUNT_VALIDATE:key:COUNT_NUMBER
- String countNumberKey = ValidatorConstants.COUNT_VALIDATE_CACHE_KEY_PREFIX + CacheConstants.CACHE_DELIMITER + key + CacheConstants.CACHE_DELIMITER + ValidatorConstants.COUNT_NUMBER;
+ String countNumberKey = CounterConstants.COUNT_VALIDATE_CACHE_KEY_PREFIX + CacheConstants.CACHE_DELIMITER + key + CacheConstants.CACHE_DELIMITER + CounterConstants.COUNT_NUMBER;
// 获取缓存中上一次操作时间秒数
Object recordTimeSecondsObject = cacheOperatorApi.get(recordTimeSecondsKey);
diff --git a/kernel-d-validator/validator-sdk-count/src/main/java/cn/stylefeng/roses/kemel/validator/count/cache/DefaultCountValidateCache.java b/kernel-d-security/security-sdk-count/src/main/java/cn/stylefeng/roses/kemel/security/count/cache/DefaultCountValidateCache.java
similarity index 67%
rename from kernel-d-validator/validator-sdk-count/src/main/java/cn/stylefeng/roses/kemel/validator/count/cache/DefaultCountValidateCache.java
rename to kernel-d-security/security-sdk-count/src/main/java/cn/stylefeng/roses/kemel/security/count/cache/DefaultCountValidateCache.java
index 9ac6c2b64..a52427e05 100644
--- a/kernel-d-validator/validator-sdk-count/src/main/java/cn/stylefeng/roses/kemel/validator/count/cache/DefaultCountValidateCache.java
+++ b/kernel-d-security/security-sdk-count/src/main/java/cn/stylefeng/roses/kemel/security/count/cache/DefaultCountValidateCache.java
@@ -1,9 +1,9 @@
-package cn.stylefeng.roses.kemel.validator.count.cache;
+package cn.stylefeng.roses.kemel.security.count.cache;
import cn.hutool.cache.impl.TimedCache;
import cn.stylefeng.roses.kernel.cache.memory.AbstractMemoryCacheOperator;
+import cn.stylefeng.roses.kernel.security.api.constants.CounterConstants;
-import static cn.stylefeng.roses.kernel.validator.api.constants.ValidatorConstants.COUNT_VALIDATE_CACHE_KEY_PREFIX;
/**
* 计数用的缓存
@@ -19,7 +19,7 @@ public class DefaultCountValidateCache extends AbstractMemoryCacheOperator
@Override
public String getCommonKeyPrefix() {
- return COUNT_VALIDATE_CACHE_KEY_PREFIX;
+ return CounterConstants.COUNT_VALIDATE_CACHE_KEY_PREFIX;
}
}
diff --git a/kernel-d-security/security-spring-boot-starter/pom.xml b/kernel-d-security/security-spring-boot-starter/pom.xml
index 23642f54f..8a4d3895b 100644
--- a/kernel-d-security/security-spring-boot-starter/pom.xml
+++ b/kernel-d-security/security-spring-boot-starter/pom.xml
@@ -24,6 +24,27 @@
7.0.1
+
+
+ cn.stylefeng.roses
+ security-sdk-captcha
+ 7.0.1
+
+
+
+
+ cn.stylefeng.roses
+ security-sdk-count
+ 7.0.1
+
+
+
+
+ cn.stylefeng.roses
+ security-sdk-black-white
+ 7.0.1
+
+
diff --git a/kernel-d-security/security-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/security/starter/CaptchaAutoConfiguration.java b/kernel-d-security/security-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/security/starter/CaptchaAutoConfiguration.java
new file mode 100644
index 000000000..daceed918
--- /dev/null
+++ b/kernel-d-security/security-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/security/starter/CaptchaAutoConfiguration.java
@@ -0,0 +1,36 @@
+package cn.stylefeng.roses.kernel.security.starter;
+
+import cn.hutool.cache.CacheUtil;
+import cn.hutool.cache.impl.TimedCache;
+import cn.stylefeng.roses.kemel.security.captcha.CaptchaService;
+import cn.stylefeng.roses.kemel.security.captcha.cache.CaptchaMemoryCache;
+import cn.stylefeng.roses.kernel.cache.api.constants.CacheConstants;
+import cn.stylefeng.roses.kernel.security.api.CaptchaApi;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+/**
+ * 图形验证码自动配置
+ *
+ * @author fengshuonan
+ * @date 2020/12/1 21:44
+ */
+@Configuration
+public class CaptchaAutoConfiguration {
+
+ /**
+ * 图形验证码
+ *
+ * @author chenjinlong
+ * @date 2021/1/15 11:25
+ */
+ @Bean
+ @ConditionalOnMissingBean(CaptchaApi.class)
+ public CaptchaApi captchaApi() {
+ TimedCache timedCache = CacheUtil.newTimedCache(CacheConstants.NONE_EXPIRED_TIME);
+ CaptchaMemoryCache captchaMemoryCache = new CaptchaMemoryCache(timedCache);
+ return new CaptchaService(captchaMemoryCache);
+ }
+
+}
diff --git a/kernel-d-validator/validator-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/validator/starter/ValidatorAutoConfiguration.java b/kernel-d-security/security-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/security/starter/ValidatorAutoConfiguration.java
similarity index 53%
rename from kernel-d-validator/validator-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/validator/starter/ValidatorAutoConfiguration.java
rename to kernel-d-security/security-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/security/starter/ValidatorAutoConfiguration.java
index fdb6c0291..7f7712391 100644
--- a/kernel-d-validator/validator-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/validator/starter/ValidatorAutoConfiguration.java
+++ b/kernel-d-security/security-spring-boot-starter/src/main/java/cn/stylefeng/roses/kernel/security/starter/ValidatorAutoConfiguration.java
@@ -1,24 +1,21 @@
-package cn.stylefeng.roses.kernel.validator.starter;
+package cn.stylefeng.roses.kernel.security.starter;
import cn.hutool.cache.CacheUtil;
import cn.hutool.cache.impl.TimedCache;
-import cn.stylefeng.roses.kemel.validator.blackwhite.BlackListService;
-import cn.stylefeng.roses.kemel.validator.blackwhite.WhiteListService;
-import cn.stylefeng.roses.kemel.validator.blackwhite.cache.BlackListMemoryCache;
-import cn.stylefeng.roses.kemel.validator.blackwhite.cache.WhiteListMemoryCache;
-import cn.stylefeng.roses.kemel.validator.captcha.CaptchaService;
-import cn.stylefeng.roses.kemel.validator.captcha.cache.CaptchaMemoryCache;
-import cn.stylefeng.roses.kemel.validator.count.DefaultCountValidator;
-import cn.stylefeng.roses.kemel.validator.count.cache.DefaultCountValidateCache;
-import cn.stylefeng.roses.kernel.validator.api.BlackListApi;
-import cn.stylefeng.roses.kernel.validator.api.CaptchaApi;
-import cn.stylefeng.roses.kernel.validator.api.CountValidatorApi;
-import cn.stylefeng.roses.kernel.validator.api.WhiteListApi;
+import cn.stylefeng.roses.kemel.security.blackwhite.BlackListService;
+import cn.stylefeng.roses.kemel.security.blackwhite.WhiteListService;
+import cn.stylefeng.roses.kemel.security.blackwhite.cache.BlackListMemoryCache;
+import cn.stylefeng.roses.kemel.security.blackwhite.cache.WhiteListMemoryCache;
+import cn.stylefeng.roses.kemel.security.count.DefaultCountValidator;
+import cn.stylefeng.roses.kemel.security.count.cache.DefaultCountValidateCache;
+import cn.stylefeng.roses.kernel.cache.api.constants.CacheConstants;
+import cn.stylefeng.roses.kernel.security.api.BlackListApi;
+import cn.stylefeng.roses.kernel.security.api.CountValidatorApi;
+import cn.stylefeng.roses.kernel.security.api.WhiteListApi;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
-import static cn.stylefeng.roses.kernel.cache.api.constants.CacheConstants.NONE_EXPIRED_TIME;
/**
* 校验器自动配置
@@ -38,7 +35,7 @@ public class ValidatorAutoConfiguration {
@Bean
@ConditionalOnMissingBean(BlackListApi.class)
public BlackListApi blackListApi() {
- TimedCache timedCache = CacheUtil.newTimedCache(NONE_EXPIRED_TIME);
+ TimedCache timedCache = CacheUtil.newTimedCache(CacheConstants.NONE_EXPIRED_TIME);
BlackListMemoryCache blackListMemoryCache = new BlackListMemoryCache(timedCache);
return new BlackListService(blackListMemoryCache);
}
@@ -52,7 +49,7 @@ public class ValidatorAutoConfiguration {
@Bean
@ConditionalOnMissingBean(CountValidatorApi.class)
public CountValidatorApi countValidatorApi() {
- TimedCache timedCache = CacheUtil.newTimedCache(NONE_EXPIRED_TIME);
+ TimedCache timedCache = CacheUtil.newTimedCache(CacheConstants.NONE_EXPIRED_TIME);
DefaultCountValidateCache defaultCountValidateCache = new DefaultCountValidateCache(timedCache);
return new DefaultCountValidator(defaultCountValidateCache);
}
@@ -66,23 +63,9 @@ public class ValidatorAutoConfiguration {
@Bean
@ConditionalOnMissingBean(WhiteListApi.class)
public WhiteListApi whiteListApi() {
- TimedCache timedCache = CacheUtil.newTimedCache(NONE_EXPIRED_TIME);
+ TimedCache timedCache = CacheUtil.newTimedCache(CacheConstants.NONE_EXPIRED_TIME);
WhiteListMemoryCache whiteListMemoryCache = new WhiteListMemoryCache(timedCache);
return new WhiteListService(whiteListMemoryCache);
}
- /**
- * 图形验证码
- *
- * @author chenjinlong
- * @date 2021/1/15 11:25
- */
- @Bean
- @ConditionalOnMissingBean(CaptchaApi.class)
- public CaptchaApi captchaApi() {
- TimedCache timedCache = CacheUtil.newTimedCache(NONE_EXPIRED_TIME);
- CaptchaMemoryCache captchaMemoryCache = new CaptchaMemoryCache(timedCache);
- return new CaptchaService(captchaMemoryCache);
- }
-
}
diff --git a/kernel-d-security/security-spring-boot-starter/src/main/resources/META-INF/spring.factories b/kernel-d-security/security-spring-boot-starter/src/main/resources/META-INF/spring.factories
index da2e401d3..98de979e7 100644
--- a/kernel-d-security/security-spring-boot-starter/src/main/resources/META-INF/spring.factories
+++ b/kernel-d-security/security-spring-boot-starter/src/main/resources/META-INF/spring.factories
@@ -1,3 +1,5 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
cn.stylefeng.roses.kernel.security.starter.GunsSecurityAutoConfiguration,\
- cn.stylefeng.roses.kernel.security.starter.GunsXssAutoConfiguration
+ cn.stylefeng.roses.kernel.security.starter.GunsXssAutoConfiguration,\
+ cn.stylefeng.roses.kernel.security.starter.ValidatorAutoConfiguration,\
+ cn.stylefeng.roses.kernel.security.starter.CaptchaAutoConfiguration
diff --git a/kernel-d-sms/sms-business-validation/pom.xml b/kernel-d-sms/sms-business-validation/pom.xml
index 652de85a3..f985a3de3 100644
--- a/kernel-d-sms/sms-business-validation/pom.xml
+++ b/kernel-d-sms/sms-business-validation/pom.xml
@@ -47,6 +47,14 @@
7.0.1
+
+
+
+ cn.stylefeng.roses
+ security-api
+ 7.0.1
+
+
diff --git a/kernel-d-sms/sms-business-validation/src/main/java/cn/stylefeng/roses/kernel/sms/modular/service/impl/SysSmsInfoServiceImpl.java b/kernel-d-sms/sms-business-validation/src/main/java/cn/stylefeng/roses/kernel/sms/modular/service/impl/SysSmsInfoServiceImpl.java
index 3c04fff70..a703dc584 100644
--- a/kernel-d-sms/sms-business-validation/src/main/java/cn/stylefeng/roses/kernel/sms/modular/service/impl/SysSmsInfoServiceImpl.java
+++ b/kernel-d-sms/sms-business-validation/src/main/java/cn/stylefeng/roses/kernel/sms/modular/service/impl/SysSmsInfoServiceImpl.java
@@ -7,6 +7,7 @@ import cn.hutool.core.util.StrUtil;
import cn.stylefeng.roses.kernel.db.api.factory.PageFactory;
import cn.stylefeng.roses.kernel.db.api.factory.PageResultFactory;
import cn.stylefeng.roses.kernel.db.api.pojo.page.PageResult;
+import cn.stylefeng.roses.kernel.security.api.CaptchaApi;
import cn.stylefeng.roses.kernel.sms.api.SmsSenderApi;
import cn.stylefeng.roses.kernel.sms.api.exception.SmsException;
import cn.stylefeng.roses.kernel.sms.api.expander.SmsConfigExpander;
@@ -19,7 +20,6 @@ import cn.stylefeng.roses.kernel.sms.modular.param.SysSmsSendParam;
import cn.stylefeng.roses.kernel.sms.modular.param.SysSmsVerifyParam;
import cn.stylefeng.roses.kernel.sms.modular.service.SysSmsInfoService;
import cn.stylefeng.roses.kernel.system.api.exception.SystemModularException;
-import cn.stylefeng.roses.kernel.validator.api.CaptchaApi;
import cn.stylefeng.roses.kernel.validator.api.exception.enums.ValidatorExceptionEnum;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
diff --git a/kernel-d-validator/pom.xml b/kernel-d-validator/pom.xml
index 4523cb6c6..cc4cc3ac1 100644
--- a/kernel-d-validator/pom.xml
+++ b/kernel-d-validator/pom.xml
@@ -17,9 +17,6 @@
validator-api
- validator-sdk-count
- validator-sdk-black-white
- validator-sdk-captcha
validator-spring-boot-starter
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/constants/ValidatorConstants.java b/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/constants/ValidatorConstants.java
index 6bbae2ff6..5d3c1e5f7 100644
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/constants/ValidatorConstants.java
+++ b/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/constants/ValidatorConstants.java
@@ -28,29 +28,4 @@ public interface ValidatorConstants {
*/
String DEFAULT_LOGIC_DELETE_FIELD_VALUE = "Y";
- /**
- * 计数校验用的 缓存前缀标识
- */
- String COUNT_VALIDATE_CACHE_KEY_PREFIX = "COUNT_VALIDATE";
-
- /**
- * 黑名单 缓存前缀标识
- */
- String BLACK_LIST_CACHE_KEY_PREFIX = "BLACK_LIST";
-
- /**
- * 白名单 缓存前缀标识
- */
- String WHITE_LIST_CACHE_KEY_PREFIX = "WHITE_LIST";
-
- /**
- * 计数校验用的 计数当时的秒数
- */
- String RECORD_TIME_SECONDS = "RECORD_TIME_SECONDS";
-
- /**
- * 计数校验用的 时间窗内的次数
- */
- String COUNT_NUMBER = "COUNT_NUMBER";
-
}
diff --git a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/expander/XssConfigExpander.java b/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/expander/XssConfigExpander.java
deleted file mode 100644
index 71c6d3a67..000000000
--- a/kernel-d-validator/validator-api/src/main/java/cn/stylefeng/roses/kernel/validator/api/expander/XssConfigExpander.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package cn.stylefeng.roses.kernel.validator.api.expander;
-
-/**
- * XSS相关配置
- *
- * @author fengshuonan
- * @date 2021/1/13 23:21
- */
-public class XssConfigExpander {
-
-
-}
diff --git a/kernel-d-validator/validator-spring-boot-starter/src/main/resources/META-INF/spring.factories b/kernel-d-validator/validator-spring-boot-starter/src/main/resources/META-INF/spring.factories
index f16c77584..f52bdbe1d 100644
--- a/kernel-d-validator/validator-spring-boot-starter/src/main/resources/META-INF/spring.factories
+++ b/kernel-d-validator/validator-spring-boot-starter/src/main/resources/META-INF/spring.factories
@@ -1,3 +1,2 @@
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
-cn.stylefeng.roses.kernel.validator.starter.ValidatorAutoConfiguration,\
cn.stylefeng.roses.kernel.validator.starter.MethodArgumentResolverAutoConfiguration
diff --git a/kernel-s-system/system-business-user/pom.xml b/kernel-s-system/system-business-user/pom.xml
index bf1d7cce0..e6c28c0ca 100644
--- a/kernel-s-system/system-business-user/pom.xml
+++ b/kernel-s-system/system-business-user/pom.xml
@@ -62,6 +62,14 @@
7.0.1
+
+
+
+ cn.stylefeng.roses
+ security-api
+ 7.0.1
+
+
diff --git a/kernel-s-system/system-business-user/src/main/java/cn/stylefeng/roses/kernel/system/modular/user/controller/KaptchaController.java b/kernel-s-system/system-business-user/src/main/java/cn/stylefeng/roses/kernel/system/modular/user/controller/KaptchaController.java
index 5160f446b..75bdc52ba 100644
--- a/kernel-s-system/system-business-user/src/main/java/cn/stylefeng/roses/kernel/system/modular/user/controller/KaptchaController.java
+++ b/kernel-s-system/system-business-user/src/main/java/cn/stylefeng/roses/kernel/system/modular/user/controller/KaptchaController.java
@@ -5,7 +5,7 @@ import cn.stylefeng.roses.kernel.rule.pojo.response.ResponseData;
import cn.stylefeng.roses.kernel.rule.pojo.response.SuccessResponseData;
import cn.stylefeng.roses.kernel.scanner.api.annotation.ApiResource;
import cn.stylefeng.roses.kernel.scanner.api.annotation.GetResource;
-import cn.stylefeng.roses.kernel.validator.api.CaptchaApi;
+import cn.stylefeng.roses.kernel.security.api.CaptchaApi;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;