diff --git a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SkuServiceImpl.java b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SkuServiceImpl.java index 186d6539b5d65a11aba49cf014fc5b4b0a515ef7..4e1916d1b6c77cf3d63a124e6ae1d23cd86e8a53 100644 --- a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SkuServiceImpl.java +++ b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SkuServiceImpl.java @@ -6,7 +6,7 @@ import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.youlai.mall.pms.common.constant.ProductConstants; +import com.youlai.mall.pms.constant.ProductConstants; import com.youlai.mall.pms.converter.SkuConverter; import com.youlai.mall.pms.mapper.PmsSkuMapper; import com.youlai.mall.pms.model.dto.LockedSkuDTO; diff --git a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SpuServiceImpl.java b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SpuServiceImpl.java index 0bd93efa0a8afbc54b65181f7663a0a1bf3d1ddc..e8420e05444bd3057553bcc0f4ab03b3ecfaf1a8 100644 --- a/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SpuServiceImpl.java +++ b/mall-pms/pms-boot/src/main/java/com/youlai/mall/pms/service/impl/SpuServiceImpl.java @@ -10,8 +10,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.youlai.common.security.util.SecurityUtils; -import com.youlai.mall.pms.common.constant.ProductConstants; -import com.youlai.mall.pms.common.enums.AttributeTypeEnum; +import com.youlai.mall.pms.constant.ProductConstants; +import com.youlai.mall.pms.enums.AttributeTypeEnum; import com.youlai.mall.pms.converter.SpuAttributeConverter; import com.youlai.mall.pms.converter.SpuConverter; import com.youlai.mall.pms.mapper.PmsSpuMapper; diff --git a/youlai-common/common-file/src/main/java/com/youlai/common/file/controller/FileController.java b/youlai-common/common-file/src/main/java/com/youlai/common/file/controller/FileController.java index a7143e860dc603cbbd0dd6d241e3a0e56c4434e7..5c836b05c13c4195299270f64131c84f64347fa5 100644 --- a/youlai-common/common-file/src/main/java/com/youlai/common/file/controller/FileController.java +++ b/youlai-common/common-file/src/main/java/com/youlai/common/file/controller/FileController.java @@ -10,7 +10,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -@Tag(name = "文件接口") +@Tag(name = "06.文件接口") @RestController @RequestMapping("/api/v1/files") @RequiredArgsConstructor diff --git a/youlai-gateway/src/main/java/com/youlai/gateway/config/SecurityConfig.java b/youlai-gateway/src/main/java/com/youlai/gateway/config/SecurityConfig.java index e9285cba108b5ece221cfe2935a51beb621602c8..07c71c7ae1f829934ebc16601a941d3509e4da95 100644 --- a/youlai-gateway/src/main/java/com/youlai/gateway/config/SecurityConfig.java +++ b/youlai-gateway/src/main/java/com/youlai/gateway/config/SecurityConfig.java @@ -1,5 +1,6 @@ package com.youlai.gateway.config; +import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.convert.Convert; import lombok.Setter; import lombok.extern.slf4j.Slf4j; @@ -16,9 +17,8 @@ import org.springframework.web.util.pattern.PathPatternParser; import java.util.List; - /** - * OAuth Client Security 配置 + * Spring Security 配置 * * @author haoxr * @since 2022/8/28 @@ -30,23 +30,31 @@ import java.util.List; public class SecurityConfig { /** - * 禁止访问的URI集合(黑名单) + * 黑名单请求路径列表 */ @Setter - private List forbiddenURIs; + private List blacklistPaths; @Bean - public SecurityWebFilterChain securityFilterChain(ServerHttpSecurity http) { + public SecurityWebFilterChain securityFilterChain(ServerHttpSecurity http) { http - .authorizeExchange(exchangeSpec -> - exchangeSpec - .pathMatchers(Convert.toStrArray(forbiddenURIs)).denyAll() - .anyExchange().permitAll() + .authorizeExchange(exchange -> + { + if (CollectionUtil.isNotEmpty(blacklistPaths)) { + exchange.pathMatchers(Convert.toStrArray(blacklistPaths)).authenticated(); + } + exchange.anyExchange().permitAll(); + } ) .csrf(ServerHttpSecurity.CsrfSpec::disable); return http.build(); } + /** + * 跨域共享配置 + * + * @return CorsConfigurationSource + */ @Bean public CorsConfigurationSource corsConfigurationSource() { UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(new PathPatternParser()); diff --git a/youlai-gateway/src/main/java/com/youlai/gateway/config/SentinelConfiguration.java b/youlai-gateway/src/main/java/com/youlai/gateway/config/SentinelConfig.java similarity index 60% rename from youlai-gateway/src/main/java/com/youlai/gateway/config/SentinelConfiguration.java rename to youlai-gateway/src/main/java/com/youlai/gateway/config/SentinelConfig.java index 48fbe81fb0c12e76d318e065260b9a4810be00b7..4cb8d958c0bc1944974c88ff3460eedba66e4239 100644 --- a/youlai-gateway/src/main/java/com/youlai/gateway/config/SentinelConfiguration.java +++ b/youlai-gateway/src/main/java/com/youlai/gateway/config/SentinelConfig.java @@ -18,15 +18,18 @@ import org.springframework.web.reactive.function.server.ServerResponse; * @since 2022/7/24 */ @Configuration -public class SentinelConfiguration { +public class SentinelConfig { @PostConstruct private void initBlockHandler() { - BlockRequestHandler blockRequestHandler = (exchange, t) -> - ServerResponse.status(HttpStatus.TOO_MANY_REQUESTS) - .contentType(MediaType.APPLICATION_JSON) - .body(BodyInserters.fromValue(ResultCode.FLOW_LIMITING.toString()) - ); - GatewayCallbackManager.setBlockHandler(blockRequestHandler); + GatewayCallbackManager.setBlockHandler( + (exchange, t) -> + ServerResponse + .status(HttpStatus.TOO_MANY_REQUESTS) + .contentType(MediaType.APPLICATION_JSON) + .body( + BodyInserters.fromValue(ResultCode.FLOW_LIMITING.toString()) + ) + ); } } diff --git a/youlai-system/system-boot/src/main/java/com/youlai/system/controller/SysDeptController.java b/youlai-system/system-boot/src/main/java/com/youlai/system/controller/SysDeptController.java index 6b7ac3121c5b57c3d5b4eac4da07c4edce0c622e..4c6cf5c584d328e9c74c3f3e55c5cc583cef90d0 100644 --- a/youlai-system/system-boot/src/main/java/com/youlai/system/controller/SysDeptController.java +++ b/youlai-system/system-boot/src/main/java/com/youlai/system/controller/SysDeptController.java @@ -9,7 +9,6 @@ import com.youlai.common.web.model.Option; import com.youlai.system.service.SysDeptService; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Parameter; -import io.swagger.v3.oas.annotations.security.SecurityRequirement; import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; @@ -25,13 +24,13 @@ import java.util.List; * @author haoxr * @since 2020/11/6 */ -@Tag(name = "05.部门接口") +@Tag(name = "04.部门接口") @RestController @RequestMapping("/api/v1/dept") @RequiredArgsConstructor public class SysDeptController { private final SysDeptService deptService; - @Operation(summary = "获取部门列表", security = {@SecurityRequirement(name = "Authorization")}) + @Operation(summary = "获取部门列表") @GetMapping public Result> listDepartments( @ParameterObject DeptQuery queryParams @@ -40,14 +39,14 @@ public class SysDeptController { return Result.success(list); } - @Operation(summary = "获取部门下拉选项", security = {@SecurityRequirement(name = "Authorization")}) + @Operation(summary = "获取部门下拉选项") @GetMapping("/options") public Result> listDeptOptions() { List