From 836252f85b8bff0072ff8017d84055b89e1d9d05 Mon Sep 17 00:00:00 2001 From: az Date: Mon, 4 Dec 2023 21:04:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=89=E5=85=A8=E7=BB=84=E5=92=8C=E5=AE=89?= =?UTF-8?q?=E5=85=A8=E8=A7=84=E5=88=99=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../constant/SecurityRulePassTypeEnum.java | 15 ++++ .../server/dal/SecurityGroupMapper.java | 7 ++ .../server/dal/SecurityRuleMapper.java | 7 ++ .../server/dal/entity/SecurityGroupDO.java | 52 +++++++++++++ .../server/dal/entity/SecurityRule.java | 78 +++++++++++++++++++ 5 files changed, 159 insertions(+) create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/constant/SecurityRulePassTypeEnum.java create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityGroupMapper.java create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityRuleMapper.java create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityGroupDO.java create mode 100644 neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityRule.java diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/constant/SecurityRulePassTypeEnum.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/constant/SecurityRulePassTypeEnum.java new file mode 100644 index 00000000..32d96759 --- /dev/null +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/constant/SecurityRulePassTypeEnum.java @@ -0,0 +1,15 @@ +package org.dromara.neutrinoproxy.server.constant; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@AllArgsConstructor +@Getter +public enum SecurityRulePassTypeEnum { + REJECT(0, "reject"), + ALLOW(1, "allow") + ; + + private final Integer code; + private final String desc; +} diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityGroupMapper.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityGroupMapper.java new file mode 100644 index 00000000..10dbe111 --- /dev/null +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityGroupMapper.java @@ -0,0 +1,7 @@ +package org.dromara.neutrinoproxy.server.dal; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.dromara.neutrinoproxy.server.dal.entity.SecurityGroupDO; + +public interface SecurityGroupMapper extends BaseMapper { +} diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityRuleMapper.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityRuleMapper.java new file mode 100644 index 00000000..03f9f1b4 --- /dev/null +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/SecurityRuleMapper.java @@ -0,0 +1,7 @@ +package org.dromara.neutrinoproxy.server.dal; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.dromara.neutrinoproxy.server.dal.entity.SecurityRule; + +public interface SecurityRuleMapper extends BaseMapper { +} diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityGroupDO.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityGroupDO.java new file mode 100644 index 00000000..9c07ff87 --- /dev/null +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityGroupDO.java @@ -0,0 +1,52 @@ +package org.dromara.neutrinoproxy.server.dal.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.ToString; +import lombok.experimental.Accessors; +import org.dromara.neutrinoproxy.server.constant.EnableStatusEnum; + +import java.util.Date; + +@Data +@ToString +@Accessors(chain = true) +@TableName("security_group") +public class SecurityGroupDO { + + @TableId(type = IdType.AUTO) + private Integer id; + + /** + * 组名 + */ + private String name; + + /** + * 描述 + */ + private String description; + + /** + * 用户id + */ + private Integer userId; + + /** + * 启用状态 + * {@link EnableStatusEnum} + */ + private Integer enable; + /** + * 创建时间 + */ + private Date createTime; + /** + * 更新时间 + */ + private Date updateTime; + + +} diff --git a/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityRule.java b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityRule.java new file mode 100644 index 00000000..5ad62760 --- /dev/null +++ b/neutrino-proxy-server/src/main/java/org/dromara/neutrinoproxy/server/dal/entity/SecurityRule.java @@ -0,0 +1,78 @@ +package org.dromara.neutrinoproxy.server.dal.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.ToString; +import lombok.experimental.Accessors; +import org.dromara.neutrinoproxy.server.constant.EnableStatusEnum; +import org.dromara.neutrinoproxy.server.constant.SecurityRulePassTypeEnum; + +import java.util.Date; + +@Data +@ToString +@Accessors(chain = true) +@TableName("security_rule") +public class SecurityRule { + + @TableId(type = IdType.AUTO) + private Integer id; + + /** + * 所属安全组 + */ + private Integer groupId; + + /** + * 规则名 + */ + private String name; + + /** + * 规则描述 + */ + private String description; + + /** + * 规则 + * 范围类型:192.168.1.0-192.168.1.255 + * 掩码类型:192.168.1.0/24 + * 泛型:0.0.0.0 + * 单个ip:192.168.1.1 + * 每个类型中间以英文逗号分隔 + */ + private String rule; + + /** + * 放行类型,reject 或 allow + * {@link SecurityRulePassTypeEnum} + */ + private Integer passType; + + /** + * 优先级,数字越小,优先级越高 + */ + private Integer priority; + + /** + * 用户id + */ + private Integer userId; + + /** + * 启用状态 + * {@link EnableStatusEnum} + */ + private Integer enable; + /** + * 创建时间 + */ + private Date createTime; + /** + * 更新时间 + */ + private Date updateTime; + +}