1、为IP域配置和回调类配置添加addrType为4OVER、6OVER4三种IP类型;
2、redis.port改回6379;
This commit is contained in:
@@ -19,6 +19,7 @@ public class CommonSourceFieldCfg {
|
||||
private Boolean isRequired=false;
|
||||
private String defaultVal;
|
||||
private String regexp;
|
||||
private Boolean isSrcInfo=false;
|
||||
|
||||
public CommonSourceFieldCfg() {
|
||||
super();
|
||||
@@ -36,7 +37,7 @@ public class CommonSourceFieldCfg {
|
||||
*/
|
||||
public CommonSourceFieldCfg(String fieldType, String srcName,
|
||||
String dstName, String range, Boolean isRequired,
|
||||
String defaultVal, String regexp) {
|
||||
String defaultVal, String regexp,Boolean isSrcInfo) {
|
||||
super();
|
||||
this.fieldType = fieldType;
|
||||
this.srcName = srcName;
|
||||
@@ -45,6 +46,7 @@ public class CommonSourceFieldCfg {
|
||||
this.isRequired = isRequired;
|
||||
this.defaultVal = defaultVal;
|
||||
this.regexp = regexp;
|
||||
this.isSrcInfo = isSrcInfo;
|
||||
}
|
||||
|
||||
public String getSrcName() {
|
||||
@@ -102,4 +104,17 @@ public class CommonSourceFieldCfg {
|
||||
public void setRegexp(String regexp) {
|
||||
this.regexp = regexp;
|
||||
}
|
||||
/**
|
||||
* @return the isSrcInfo
|
||||
*/
|
||||
public Boolean getIsSrcInfo() {
|
||||
return isSrcInfo;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param isSrcInfo the isSrcInfo to set
|
||||
*/
|
||||
public void setIsSrcInfo(Boolean isSrcInfo) {
|
||||
this.isSrcInfo = isSrcInfo;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -702,26 +702,92 @@ public class CompileVal {
|
||||
}
|
||||
|
||||
public static String serviceIpClientRegionVal(IpRegion ipRegion, Long compileId) {
|
||||
//源IP信息和目的IP信息格式为IPV4或IPV6
|
||||
if (ipRegion.getAddrType().intValue()==4||ipRegion.getAddrType().intValue()==6) {
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), ipRegion.getAddrType())) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipClientRangeList中regionId为" + ipRegion.getRegionId()
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置srcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskSrcIp(), ipRegion.getAddrType())) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipClientRangeList中regionId为" + ipRegion.getRegionId()
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskSrcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getDstIp(), ipRegion.getAddrType())) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipClientRangeList中regionId为" + ipRegion.getRegionId()
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置dstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskDstIp(), ipRegion.getAddrType())) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipClientRangeList中regionId为" + ipRegion.getRegionId()
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}else if (ipRegion.getAddrType().intValue()==46) {//4OVER6:源IP信息格式为IPV4、目的IP信息格式IPV6
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置srcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskSrcIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskSrcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getDstIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置dstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskDstIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}else if (ipRegion.getAddrType().intValue()==64) {//6OVER4:源IP信息格式为IPV6、目的IP信息格式IPV4
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置srcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskSrcIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskSrcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getDstIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置dstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskDstIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}else if (ipRegion.getAddrType().intValue()==10) {//all:符合IP格式即可
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置srcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskSrcIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskSrcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getDstIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置dstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskDstIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}
|
||||
|
||||
if (!BasicProvingUtil.isPortOrPortMask(ipRegion.getSrcPort())) {
|
||||
businessCode = RestBusinessCode.PortIsNotVal.getValue();
|
||||
@@ -776,6 +842,8 @@ public class CompileVal {
|
||||
}
|
||||
|
||||
public static String serviceIpRegionVal(IpRegion ipRegion, Long compileId) {
|
||||
//源IP信息和目的IP信息格式为IPV4或IPV6
|
||||
if (ipRegion.getAddrType().intValue()==4||ipRegion.getAddrType().intValue()==6) {
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), ipRegion.getAddrType())) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
@@ -796,6 +864,70 @@ public class CompileVal {
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}else if (ipRegion.getAddrType().intValue()==46) {//4OVER6:源IP信息格式为IPV4、目的IP信息格式IPV6
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置srcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskSrcIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskSrcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getDstIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置dstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskDstIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}else if (ipRegion.getAddrType().intValue()==64) {//6OVER4:源IP信息格式为IPV6、目的IP信息格式IPV4
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置srcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskSrcIp(), 6)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskSrcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getDstIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置dstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskDstIp(), 4)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}else if (ipRegion.getAddrType().intValue()==10) {//all:符合IP格式即可
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getSrcIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置srcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskSrcIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskSrcIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getDstIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置dstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(ipRegion.getMaskDstIp(), null)) {
|
||||
businessCode = RestBusinessCode.IPUnMatchAddrType.getValue();
|
||||
return "编译配置id为" + compileId + "的配置中ipRegionList中regionId为" + ipRegion.getRegionId()
|
||||
+ "的域配置maskDstIp的格式不正确或与addrType不一致";
|
||||
}
|
||||
}
|
||||
|
||||
if (!BasicProvingUtil.isPortOrPortMask(ipRegion.getSrcPort())) {
|
||||
businessCode = RestBusinessCode.PortIsNotVal.getValue();
|
||||
|
||||
@@ -91,6 +91,9 @@ public class ReadCommSourceXmlUtil {
|
||||
if (!StringUtil.isEmpty(field.attribute("regexp"))) {
|
||||
fieldCfg.setRegexp(field.attribute("regexp").getValue());
|
||||
}
|
||||
if (!StringUtil.isEmpty(field.attribute("isSrcInfo"))) {
|
||||
fieldCfg.setIsSrcInfo(Boolean.valueOf(field.attribute("isSrcInfo").getValue()));
|
||||
}
|
||||
cfgList.add(fieldCfg);
|
||||
}
|
||||
commonSourceCfgMap.put(serviceId.trim(), cfgList);
|
||||
|
||||
@@ -2876,7 +2876,16 @@ public class ConfigSourcesService extends BaseService {
|
||||
}
|
||||
break;
|
||||
case "IP":
|
||||
if (!BasicProvingUtil.isIpOrIpMask(dstStr, ipType)) {
|
||||
Boolean isSrcInfo = commonSourceFieldCfg.getIsSrcInfo();
|
||||
Integer valAddrType = ipType;
|
||||
if (ipType.intValue()==46) {
|
||||
valAddrType=isSrcInfo?4:6;
|
||||
}else if (ipType.intValue()==64) {
|
||||
valAddrType=isSrcInfo?6:4;
|
||||
}else if (ipType.intValue()==10) {
|
||||
valAddrType=null;
|
||||
}
|
||||
if (!BasicProvingUtil.isIpOrIpMask(dstStr, valAddrType)) {
|
||||
logger.error(commonSourceFieldCfg.getSrcName()
|
||||
+ "参数格式不正确或与" + ipTypeName + "不一致");
|
||||
thread.setExceptionInfo(commonSourceFieldCfg
|
||||
|
||||
@@ -39,6 +39,8 @@
|
||||
<xs:enumeration value="Date"></xs:enumeration>
|
||||
<xs:enumeration value="Number"></xs:enumeration>
|
||||
<xs:enumeration value="IP">
|
||||
<![CDATA[IP类型数据,如果格式可能为4OVER6或6OVER4,需要添加isSrcInfo="true"
|
||||
]]>
|
||||
</xs:enumeration>
|
||||
<xs:enumeration value="Port"></xs:enumeration>
|
||||
</xs:restriction>
|
||||
@@ -68,6 +70,12 @@
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
<xs:attribute name="isSrcInfo" type="xs:boolean">
|
||||
<xs:annotation>
|
||||
<xs:documentation><![CDATA[IP类型数据,如果格式可能为4OVER6或6OVER4,通过isSrcInfo="true"指定源IP信息]]>
|
||||
</xs:documentation>
|
||||
</xs:annotation>
|
||||
</xs:attribute>
|
||||
</xs:complexType>
|
||||
</xs:element>
|
||||
</xs:sequence>
|
||||
|
||||
@@ -15,9 +15,9 @@
|
||||
<t:field fieldType="String" srcName="service" dstName="service" isRequired="true"/>
|
||||
<t:field fieldType="Number" srcName="action" dstName="action" isRequired="true"/>
|
||||
<t:field fieldType="Number" srcName="cfgId" dstName="cfg_id" isRequired="true" />
|
||||
<t:field fieldType="Number" srcName="addrType" dstName="addr_type" isRequired="true" regexp="[4|6]"/>
|
||||
<t:field fieldType="IP" srcName="srcIp" dstName="src_ip" isRequired="true"/>
|
||||
<t:field fieldType="IP" srcName="maskSrcIp" dstName="mask_src_ip" isRequired="true"/>
|
||||
<t:field fieldType="Number" srcName="addrType" dstName="addr_type" isRequired="true" regexp="^([4|6]{1})|46|64|10$"/>
|
||||
<t:field fieldType="IP" srcName="srcIp" dstName="src_ip" isRequired="true" isSrcInfo="true"/>
|
||||
<t:field fieldType="IP" srcName="maskSrcIp" dstName="mask_src_ip" isRequired="true" isSrcInfo="true"/>
|
||||
<t:field fieldType="Port" srcName="srcPort" dstName="src_port" isRequired="true" range="0-65535"/>
|
||||
<t:field fieldType="Port" srcName="maskSrcPort" dstName="mask_src_port" isRequired="true" range="0-65535"/>
|
||||
<t:field fieldType="IP" srcName="dstIp" dstName="dst_ip" isRequired="true"/>
|
||||
@@ -90,9 +90,9 @@
|
||||
<t:field fieldType="Number" srcName="action" dstName="action" isRequired="true"/>
|
||||
<t:field fieldType="Number" srcName="cfgId" dstName="cfg_id" isRequired="true" />
|
||||
<t:field fieldType="Number" srcName="policyGroup" dstName="policy_group" isRequired="true" defaultVal="0"/>
|
||||
<t:field fieldType="Number" srcName="addrType" dstName="addr_type" isRequired="true" regexp="[4|6]"/>
|
||||
<t:field fieldType="IP" srcName="srcIp" dstName="src_ip" isRequired="true"/>
|
||||
<t:field fieldType="IP" srcName="maskSrcIp" dstName="mask_src_ip" isRequired="true"/>
|
||||
<t:field fieldType="Number" srcName="addrType" dstName="addr_type" isRequired="true" regexp="^([4|6]{1})|46|64|10$"/>
|
||||
<t:field fieldType="IP" srcName="srcIp" dstName="src_ip" isRequired="true" isSrcInfo="true"/>
|
||||
<t:field fieldType="IP" srcName="maskSrcIp" dstName="mask_src_ip" isRequired="true" isSrcInfo="true"/>
|
||||
<t:field fieldType="Port" srcName="srcPort" dstName="src_port" isRequired="true" range="0-65535"/>
|
||||
<t:field fieldType="Port" srcName="maskSrcPort" dstName="mask_src_port" isRequired="true" range="0-65535"/>
|
||||
<t:field fieldType="IP" srcName="dstIp" dstName="dst_ip" isRequired="true"/>
|
||||
|
||||
@@ -64,7 +64,7 @@ bonecp.hive.statementsCacheSize=100
|
||||
#####################################################################################################################################
|
||||
redis.host=10.0.6.249
|
||||
#redis.host=192.168.10.205
|
||||
redis.port=6381
|
||||
redis.port=6379
|
||||
redis.pass=
|
||||
redis.maxIdle=5
|
||||
redis.maxTotal=250
|
||||
|
||||
Reference in New Issue
Block a user