DNS reject增加策略分组功能
This commit is contained in:
@@ -20,6 +20,8 @@ import com.google.gson.annotations.Expose;
|
||||
* @version V1.0
|
||||
*/
|
||||
public class InlineIp {
|
||||
@Expose
|
||||
private Integer id;
|
||||
@Expose
|
||||
private Integer cfgId;
|
||||
@Expose
|
||||
@@ -52,6 +54,8 @@ public class InlineIp {
|
||||
private Integer isValid;
|
||||
@Expose
|
||||
private Date opTime;
|
||||
@Expose
|
||||
private Long policyGroup;
|
||||
/**
|
||||
* action
|
||||
* @return action
|
||||
@@ -276,5 +280,17 @@ public class InlineIp {
|
||||
public void setService(Integer service) {
|
||||
this.service = service;
|
||||
}
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
public void setId(Integer id) {
|
||||
this.id = id;
|
||||
}
|
||||
public Long getPolicyGroup() {
|
||||
return policyGroup;
|
||||
}
|
||||
public void setPolicyGroup(Long policyGroup) {
|
||||
this.policyGroup = policyGroup;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -52,6 +52,22 @@ public class CfgIndexInfo extends BaseCfg<CfgIndexInfo> {
|
||||
private List<BaseStringCfg> stringList;
|
||||
private List<FileDigestCfg> digestList;
|
||||
|
||||
private Long dnsStrategyId;
|
||||
private String dnsStrategyName;
|
||||
|
||||
public Long getDnsStrategyId() {
|
||||
return dnsStrategyId;
|
||||
}
|
||||
public void setDnsStrategyId(Long dnsStrategyId) {
|
||||
this.dnsStrategyId = dnsStrategyId;
|
||||
}
|
||||
public String getDnsStrategyName() {
|
||||
return dnsStrategyName;
|
||||
}
|
||||
public void setDnsStrategyName(String dnsStrategyName) {
|
||||
this.dnsStrategyName = dnsStrategyName;
|
||||
}
|
||||
|
||||
public AvVoipAccountCfg getVoipAccount() {
|
||||
return voipAccount;
|
||||
}
|
||||
|
||||
@@ -54,4 +54,5 @@ public class IpPortCfg extends BaseIpCfg {
|
||||
return tableName;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@ import com.nis.domain.Page;
|
||||
import com.nis.domain.configuration.BaseStringCfg;
|
||||
import com.nis.domain.configuration.CfgIndexInfo;
|
||||
import com.nis.domain.configuration.ComplexkeywordCfg;
|
||||
import com.nis.domain.configuration.DnsResStrategy;
|
||||
import com.nis.domain.configuration.ComplexStringCfgTemplate;
|
||||
import com.nis.domain.configuration.IpCfgTemplate;
|
||||
import com.nis.domain.configuration.StringCfgTemplate;
|
||||
@@ -299,6 +300,9 @@ public class WebsiteController extends BaseController{
|
||||
}else{
|
||||
initFormCondition(model,entity);
|
||||
}
|
||||
//获取所有响应策略信息
|
||||
List<DnsResStrategy> resStrategys=dnsResStrategyService.findDnsResStrategys(null, 1,1);
|
||||
model.addAttribute("dnsResStrategys", resStrategys);
|
||||
model.addAttribute("_cfg", entity);
|
||||
return "/cfg/website/dnsForm";
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.nis.web.controller.configuration;
|
||||
package com.nis.web.controller.configuration.proxy;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@@ -48,7 +48,7 @@ public class DnsIpCfgController extends BaseController {
|
||||
initFormCondition(model,cfg);
|
||||
}
|
||||
//获取所有响应策略信息
|
||||
List<DnsResStrategy> resStrategys=dnsResStrategyService.findDnsResStrategys(null, -1);
|
||||
List<DnsResStrategy> resStrategys=dnsResStrategyService.findDnsResStrategys(null, 1,1);
|
||||
model.addAttribute("dnsResStrategys", resStrategys);
|
||||
model.addAttribute("_cfg", cfg);
|
||||
return "/cfg/dnsIpCfgForm";
|
||||
@@ -77,7 +77,7 @@ public class DnsIpCfgController extends BaseController {
|
||||
return "redirect:" + adminPath +"/cfg/dnsIp/list?functionId="+functionId;
|
||||
}
|
||||
@RequestMapping(value = {"/audit"})
|
||||
@RequiresPermissions(value={"dns:fake:ip:audit"})
|
||||
//@RequiresPermissions(value={"dns:fake:ip:audit"})
|
||||
public String audit(Integer isAudit,Integer isValid,String ids,Integer functionId, RedirectAttributes redirectAttributes) {
|
||||
if(!StringUtil.isEmpty(ids)){
|
||||
String[] idArray = ids.split(",");
|
||||
@@ -1,4 +1,4 @@
|
||||
package com.nis.web.controller.configuration.ntc;
|
||||
package com.nis.web.controller.configuration.proxy;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
@@ -72,6 +72,7 @@ public class DnsResStrategyController extends BaseController {
|
||||
DnsResStrategy dns0=dnsResStrategyService.getDnsResStrategy(0l,null);
|
||||
if(dns0 == null){
|
||||
cfg.setCfgId(0l);
|
||||
cfg.setCfgDesc("无策略");
|
||||
}
|
||||
initFormCondition(model, cfg);
|
||||
model.addAttribute("isAdd", true);
|
||||
@@ -60,7 +60,10 @@
|
||||
left join sys_user e on r.editor_id=e.id
|
||||
left join sys_user u on r.auditor_id=u.id
|
||||
left join request_info ri on r.request_id=ri.id
|
||||
<where>
|
||||
<trim prefix="WHERE" prefixOverrides="AND |OR ">
|
||||
<if test="page !=null and page.where != null and page.where != ''">
|
||||
AND ${page.where}
|
||||
</if>
|
||||
<if test="cfgId != null">
|
||||
AND r.CFG_ID=#{cfgId,jdbcType=BIGINT}
|
||||
</if>
|
||||
@@ -163,14 +166,25 @@
|
||||
<if test="functionId != null">
|
||||
AND r.FUNCTION_ID=#{functionId,jdbcType=INTEGER}
|
||||
</if>
|
||||
</where>
|
||||
|
||||
<!-- 数据范围过滤 -->
|
||||
${sqlMap.dsf}
|
||||
</trim>
|
||||
<choose>
|
||||
<when test="page !=null and page.orderBy != null and page.orderBy != ''">
|
||||
ORDER BY ${page.orderBy}
|
||||
</when>
|
||||
<otherwise>
|
||||
ORDER BY r.CFG_ID desc
|
||||
</otherwise>
|
||||
</choose>
|
||||
</select>
|
||||
|
||||
<select id="getDnsIpCfg" resultMap="dnsIpCfgMap">
|
||||
select
|
||||
<include refid="columns"></include>,
|
||||
from dns_ip_cfg dic
|
||||
where dic.cfg_id=#{cfgId}
|
||||
<include refid="columns"></include>
|
||||
from dns_ip_cfg r
|
||||
where r.cfg_id=#{cfgId}
|
||||
</select>
|
||||
|
||||
<insert id="insert" parameterType="com.nis.domain.configuration.DnsIpCfg" >
|
||||
|
||||
@@ -11,6 +11,8 @@ import com.nis.web.dao.MyBatisDao;
|
||||
@MyBatisDao
|
||||
public interface DnsResStrategyDao extends CrudDao<DnsResStrategy> {
|
||||
List<DnsResStrategy> findPage(DnsResStrategy dnsResStrategy);
|
||||
List<DnsResStrategy> findList(@Param("cfgId")Long cfgId,@Param("isValid")Integer isValid);
|
||||
List<DnsResStrategy> findList(@Param("cfgId")Long cfgId
|
||||
,@Param("isAudit")Integer isAudit
|
||||
,@Param("isValid")Integer isValid);
|
||||
|
||||
}
|
||||
@@ -145,15 +145,22 @@
|
||||
AND r.is_valid !=-1
|
||||
</if>
|
||||
<if test="isValid == 1">
|
||||
AND r.is_valid ==1
|
||||
AND r.is_valid =1
|
||||
</if>
|
||||
<if test="isValid == 0">
|
||||
AND r.is_valid ==0
|
||||
AND r.is_valid =0
|
||||
</if>
|
||||
<if test="isAudit == 0">
|
||||
AND r.is_audit =0
|
||||
</if>
|
||||
<if test="isAudit == 1">
|
||||
AND r.is_audit =1
|
||||
</if>
|
||||
<if test="cfgId != null">
|
||||
AND r.CFG_ID=#{cfgId,jdbcType=BIGINT}
|
||||
</if>
|
||||
</where>
|
||||
order by cfg_Id
|
||||
</select>
|
||||
<insert id="insert" parameterType="com.nis.domain.configuration.DnsResStrategy" >
|
||||
insert into dns_res_strategy (
|
||||
|
||||
@@ -23,6 +23,8 @@
|
||||
<result column="lable" property="lable" jdbcType="VARCHAR" />
|
||||
<result column="area_effective_ids" property="areaEffectiveIds" jdbcType="VARCHAR" />
|
||||
<result column="function_id" property="functionId" jdbcType="INTEGER" />
|
||||
<result column="dns_strategy_id" property="dnsStrategyId" jdbcType="INTEGER" />
|
||||
<result column="dns_strategy_name" property="dnsStrategyName" jdbcType="VARCHAR" />
|
||||
</resultMap>
|
||||
<resultMap id="ipPortMap" type="com.nis.domain.configuration.IpPortCfg" >
|
||||
<id column="cfg_id" property="cfgId" jdbcType="BIGINT" />
|
||||
@@ -121,7 +123,7 @@
|
||||
a.CFG_ID,a.CFG_DESC,a.ACTION,a.IS_VALID,a.IS_AUDIT,
|
||||
a.CREATOR_ID,a.CREATE_TIME,a.EDITOR_ID,a.EDIT_TIME,a.AUDITOR_ID,a.AUDIT_TIME,
|
||||
a.SERVICE_ID,a.REQUEST_ID,a.COMPILE_ID,a.IS_AREA_EFFECTIVE,a.CLASSIFY,
|
||||
a.ATTRIBUTE,a.LABLE,a.AREA_EFFECTIVE_IDS,a.function_id
|
||||
a.ATTRIBUTE,a.LABLE,a.AREA_EFFECTIVE_IDS,a.function_id,a.dns_strategy_id
|
||||
</sql>
|
||||
<sql id="IpCfg_Column" >
|
||||
a.cfg_id,a.cfg_desc,a.ip_type,a.src_ip_address,a.ip_pattern,a.port_pattern,a.src_port
|
||||
@@ -148,9 +150,10 @@
|
||||
<include refid="ConfigIndex_Column" />
|
||||
<trim prefix="," prefixOverrides=",">
|
||||
, s.name as creator_name,e.name as editor_name,u.name as auditor_name
|
||||
,ri.request_title as requestName
|
||||
,ri.request_title as requestName,dns.cfg_desc as dns_strategy_name
|
||||
</trim>
|
||||
FROM cfg_index_info a
|
||||
left join dns_res_strategy dns on a.dns_strategy_id=dns.cfg_id
|
||||
left join sys_user s on a.creator_id=s.id
|
||||
left join sys_user e on a.editor_id=e.id
|
||||
left join sys_user u on a.auditor_id=u.id
|
||||
@@ -388,7 +391,8 @@
|
||||
ATTRIBUTE,
|
||||
LABLE,
|
||||
AREA_EFFECTIVE_IDS,
|
||||
function_id
|
||||
function_id,
|
||||
dns_strategy_id
|
||||
)values (
|
||||
#{cfgDesc,jdbcType=VARCHAR},
|
||||
#{action,jdbcType=INTEGER},
|
||||
@@ -408,7 +412,8 @@
|
||||
#{attribute,jdbcType=VARCHAR},
|
||||
#{lable,jdbcType=VARCHAR},
|
||||
#{areaEffectiveIds,jdbcType=VARCHAR},
|
||||
#{functionId,jdbcType=INTEGER}
|
||||
#{functionId,jdbcType=INTEGER},
|
||||
#{dnsStrategyId,jdbcType=INTEGER}
|
||||
)
|
||||
</insert>
|
||||
<!-- insert ip_port_cfg表信息 -->
|
||||
@@ -774,6 +779,7 @@
|
||||
<if test="functionId != null" >
|
||||
function_id = #{functionId,jdbcType=INTEGER},
|
||||
</if>
|
||||
dns_strategy_id = #{dnsStrategyId,jdbcType=INTEGER},
|
||||
</trim>
|
||||
</set>
|
||||
where cfg_id = #{cfgId,jdbcType=BIGINT}
|
||||
|
||||
@@ -528,9 +528,10 @@ public abstract class BaseService {
|
||||
return resStrategy;
|
||||
}
|
||||
//ip转换为callback用ip
|
||||
public InlineIp convertCallBackIp(BaseIpCfg cfg){
|
||||
public InlineIp convertCallBackIp(BaseIpCfg cfg,Long policyGroup){
|
||||
IpCfg c=ipConvert(new IpCfg(),cfg);
|
||||
InlineIp ip=new InlineIp();
|
||||
ip.setId(cfg.getCompileId());
|
||||
ip.setCfgId(cfg.getCompileId());
|
||||
ip.setAction(cfg.getAction());
|
||||
ip.setService(cfg.getServiceId());
|
||||
@@ -547,6 +548,7 @@ public abstract class BaseService {
|
||||
ip.setDirection(cfg.getDirection());
|
||||
ip.setIsValid(cfg.getIsValid());
|
||||
ip.setOpTime(cfg.getAuditTime());
|
||||
ip.setPolicyGroup(policyGroup);
|
||||
return ip;
|
||||
}
|
||||
//区域IPsetAreaEffectiveIds设置
|
||||
|
||||
@@ -13,6 +13,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import com.nis.domain.Page;
|
||||
import com.nis.domain.callback.InlineIp;
|
||||
import com.nis.domain.callback.NtcDnsResStrategy;
|
||||
import com.nis.domain.configuration.AreaBean;
|
||||
import com.nis.domain.configuration.AreaIpCfg;
|
||||
@@ -146,36 +147,36 @@ public class DnsIpCfgService extends BaseService{
|
||||
|
||||
String json="";
|
||||
if(entity.getIsAudit()==1){
|
||||
List<NtcDnsResStrategy> resStrategyList=new ArrayList<NtcDnsResStrategy>();
|
||||
//NtcDnsResStrategy resStrategy=convertCallBackIp(entity);
|
||||
//resStrategyList.add(resStrategy);
|
||||
List<InlineIp> resStrategyList=new ArrayList<InlineIp>();
|
||||
InlineIp resStrategy=convertCallBackIp(entity,entity.getDnsStrategyId());
|
||||
resStrategyList.add(resStrategy);
|
||||
//调用服务接口下发配置数据
|
||||
json=gsonToJson(resStrategyList);
|
||||
logger.info("DNS响应策略配置下发配置参数:"+json);
|
||||
logger.info("DNS欺骗ip配置下发配置参数:"+json);
|
||||
//调用服务接口下发配置
|
||||
try {
|
||||
ToMaatResult result = ConfigServiceUtil.postCallbackCfg(json);
|
||||
if(result!=null){
|
||||
logger.info("DNS响应策略配置下发响应信息:"+result.getMsg());
|
||||
logger.info("DNS欺骗ip配置下发响应信息:"+result.getMsg());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
logger.error("DNS响应策略配置配置下发失败",e);
|
||||
logger.error("DNS欺骗ip配置下发失败",e);
|
||||
throw e;
|
||||
}
|
||||
}else if(entity.getIsAudit()==3){
|
||||
List<NtcDnsResStrategy> resStrategyList=new ArrayList<>();
|
||||
//NtcDnsResStrategy ntcDnsResStrategy=convertCallBackDnsResStrategy(cfg);
|
||||
//resStrategyList.add(ntcDnsResStrategy);
|
||||
List<InlineIp> resStrategyList=new ArrayList<>();
|
||||
InlineIp resStrategy=convertCallBackIp(entity,entity.getDnsStrategyId());
|
||||
resStrategyList.add(resStrategy);
|
||||
//调用服务接口取消配置
|
||||
json=gsonToJson(resStrategyList);
|
||||
logger.info("DNS响应策略配置配置参数:"+json);
|
||||
logger.info("DNS欺骗ip配置参数:"+json);
|
||||
//调用服务接口取消配置
|
||||
try {
|
||||
ToMaatResult result = ConfigServiceUtil.put(json, 2);
|
||||
logger.info("DNS响应策略配置响应信息:"+result.getMsg());
|
||||
logger.info("DNS欺骗ip配置响应信息:"+result.getMsg());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
logger.info("DNS响应策略配置配置失败");
|
||||
logger.info("DNS欺骗ip配置配置失败");
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,13 +56,13 @@ public class DnsResStrategyService extends BaseService{
|
||||
page.setList(list);
|
||||
return page;
|
||||
}
|
||||
public List<DnsResStrategy> findDnsResStrategys(Long cfgId,Integer isValid) {
|
||||
List<DnsResStrategy> list=dnsResStrategyDao.findList(cfgId,isValid);
|
||||
public List<DnsResStrategy> findDnsResStrategys(Long cfgId,Integer isValid,Integer isAudit) {
|
||||
List<DnsResStrategy> list=dnsResStrategyDao.findList(cfgId,isValid,isAudit);
|
||||
return list;
|
||||
}
|
||||
|
||||
public DnsResStrategy getDnsResStrategy(Long id,Integer isValid) {
|
||||
List<DnsResStrategy> list=dnsResStrategyDao.findList(id,isValid);
|
||||
List<DnsResStrategy> list=dnsResStrategyDao.findList(id,isValid,null);
|
||||
DnsResStrategy dnsResStrategy=null;
|
||||
if(list != null && list.size()>0){
|
||||
dnsResStrategy=list.get(0);
|
||||
@@ -73,7 +73,7 @@ public class DnsResStrategyService extends BaseService{
|
||||
public void saveOrUpdate(DnsResStrategy entity){
|
||||
Date createTime=new Date();
|
||||
setAreaEffectiveIds(entity);
|
||||
List<DnsResStrategy> list=dnsResStrategyDao.findList(entity.getCfgId(),null);
|
||||
List<DnsResStrategy> list=dnsResStrategyDao.findList(entity.getCfgId(),null,null);
|
||||
//新增
|
||||
if(list==null || list.size()==0){
|
||||
entity.initDefaultValue();
|
||||
|
||||
@@ -157,7 +157,7 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
|
||||
if(cfg.getIsAudit()==1){
|
||||
if(Constants.DROP_ACTION==cfg.getAction()||Constants.LOOP_ACTION==cfg.getAction()){
|
||||
List<InlineIp> ipList=new ArrayList<>();
|
||||
InlineIp ip=convertCallBackIp(cfg);
|
||||
InlineIp ip=convertCallBackIp(cfg,null);
|
||||
ipList.add(ip);
|
||||
//调用服务接口下发配置数据
|
||||
json=gsonToJson(ipList);
|
||||
@@ -215,7 +215,7 @@ public class IpCfgService extends CrudService<IpCfgDao,BaseIpCfg> {
|
||||
}else if(cfg.getIsAudit()==3){
|
||||
if(Constants.DROP_ACTION==cfg.getAction()||Constants.LOOP_ACTION==cfg.getAction()){
|
||||
List<InlineIp> ipList=new ArrayList<>();
|
||||
InlineIp ip=convertCallBackIp(cfg);
|
||||
InlineIp ip=convertCallBackIp(cfg,null);
|
||||
ipList.add(ip);
|
||||
//调用服务接口取消配置
|
||||
json=gsonToJson(ipList);
|
||||
|
||||
@@ -867,7 +867,10 @@ public class WebsiteCfgService extends CrudService<WebsiteCfgDao,CfgIndexInfo> {
|
||||
maatCfg.setGroupNum(groupRelationList.size());
|
||||
maatCfg.setAreaIpRegionList(areaIpRegionList);
|
||||
maatCfg.setIsValid(entity.getIsValid());
|
||||
|
||||
// dns reject userRegion=;dnsStrategyId;
|
||||
if(!StringUtil.isEmpty(entity.getDnsStrategyId())){
|
||||
maatCfg.setUserRegion(Constants.USER_REGION_SPLIT+entity.getDnsStrategyId()+Constants.USER_REGION_SPLIT);
|
||||
}
|
||||
configCompileList.add(maatCfg);
|
||||
maatBean.setConfigCompileList(configCompileList);
|
||||
maatBean.setAuditTime(entity.getAuditTime());
|
||||
|
||||
Reference in New Issue
Block a user