【8.1.9】【security】更新获取黑白名单列表接口

dev-8.1.9
stylefeng 2024-07-10 21:35:21 +08:00
parent e21197ce70
commit 7150244f01
3 changed files with 125 additions and 0 deletions

View File

@ -0,0 +1,40 @@
/*
* Copyright [2020-2030] [https://www.stylefeng.cn]
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* GunsAPACHE LICENSE 2.0使
*
* 1.LICENSE
* 2.Guns
* 3.
* 4. https://gitee.com/stylefeng/guns
* 5. https://gitee.com/stylefeng/guns
* 6.
*/
package cn.stylefeng.roses.kernel.security.api.constants;
/**
*
*
* @author fengshuonan
* @since 2024/7/10 21:32
*/
public interface SecurityPermissionConstants {
/**
* 线
*/
String BLACK_WHITE_LIST_UPDATE = "BLACK_WHITE_LIST_UPDATE";
}

View File

@ -0,0 +1,56 @@
package cn.stylefeng.roses.kernel.security.blackwhite.controller;
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.security.api.constants.SecurityPermissionConstants;
import cn.stylefeng.roses.kernel.security.blackwhite.BlackListService;
import cn.stylefeng.roses.kernel.security.blackwhite.WhiteListService;
import cn.stylefeng.roses.kernel.security.blackwhite.pojo.BlackWhiteList;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collection;
/**
*
*
* @author fengshuonan
* @since 2024/7/10 18:52
*/
@RestController
@ApiResource(name = "黑白名单接口", requiredPermission = true, requirePermissionCode = SecurityPermissionConstants.BLACK_WHITE_LIST_UPDATE)
public class SecurityBlackWhiteController {
@Resource
private BlackListService blackListService;
@Resource
private WhiteListService whiteListService;
/**
*
*
* @author fengshuonan
* @since 2024/7/10 21:29
*/
@GetResource(name = "获取黑白名单列表", path = "/blackWhite/list")
public ResponseData<BlackWhiteList> blackWhiteList() {
BlackWhiteList blackWhiteList = new BlackWhiteList();
// 获取白名单
Collection<String> blackList = blackListService.getBlackList();
blackWhiteList.setBlackList(new ArrayList<>(blackList));
// 获取黑名单
Collection<String> whiteList = whiteListService.getWhiteList();
blackWhiteList.setWhiteList(new ArrayList<>(whiteList));
return new SuccessResponseData<>(blackWhiteList);
}
}

View File

@ -0,0 +1,29 @@
package cn.stylefeng.roses.kernel.security.blackwhite.pojo;
import cn.stylefeng.roses.kernel.rule.annotation.ChineseDescription;
import lombok.Data;
import java.util.List;
/**
*
*
* @author fengshuonan
* @since 2024/7/10 21:30
*/
@Data
public class BlackWhiteList {
/**
*
*/
@ChineseDescription("黑名单列表")
private List<String> blackList;
/**
*
*/
@ChineseDescription("白名单列表")
private List<String> whiteList;
}