diff --git a/src/main/java/com/nis/util/ServiceAndRDBIndexReal.java b/src/main/java/com/nis/util/ServiceAndRDBIndexReal.java index 570e16a..ffbd331 100644 --- a/src/main/java/com/nis/util/ServiceAndRDBIndexReal.java +++ b/src/main/java/com/nis/util/ServiceAndRDBIndexReal.java @@ -20,6 +20,12 @@ public class ServiceAndRDBIndexReal { * 第一个key是业务类型,第二个key是type(编译配置,分组配置,域配置)value是表名 */ private static Map> sercieNameMap = new HashMap>(); + + /** + * 非maat结构业务类型与表名对应关系,key是业务类型,value是表名 + */ + private static Map unMaatSercieNameMap = new HashMap(); + /** * key是业务类型,value是业务类型对应的redisdbIndex */ @@ -29,6 +35,28 @@ public class ServiceAndRDBIndexReal { */ private static Map serviceActionMap = new HashMap(); static { + + String unMaatService = Configurations.getStringProperty("unMaatService", ""); + if (unMaatService != null && !unMaatService.trim().equals("")) { + String[] split = unMaatService.split(";"); + for (String str : split) { + String[] serviceAction = str.split(":"); + serviceActionMap.put(Integer.valueOf(serviceAction[0]), Integer.valueOf(serviceAction[1])); + + String serviceType = Configurations.getStringProperty(serviceAction[0], ""); + if (serviceType != null && !serviceType.trim().equals("")) { + String[] typeArrs = serviceType.split(";"); + for (String typeStr : typeArrs) { + String[] typeArr = typeStr.split(":"); + String tableNameArr[] = typeArr[1].split(","); + for (String tableName : tableNameArr) { + unMaatSercieNameMap.put(Integer.parseInt(serviceAction[0]), tableName.toUpperCase()); + } + } + } + } + } + String service = Configurations.getStringProperty("service", ""); if (service != null && !service.trim().equals("")) { String[] split = service.split(";"); @@ -65,11 +93,12 @@ public class ServiceAndRDBIndexReal { } } } -/** - * 根据业务类型获取这个 - * @param service - * @return - */ + + /** + * 根据业务类型获取这个 + * @param service + * @return + */ public static List getRedisDBByService(Integer service) { List redisIndexList = serviceDBIndexmap.get(service); if (redisIndexList == null) { @@ -93,10 +122,11 @@ public class ServiceAndRDBIndexReal { } } + public static Integer getActionByService(Integer service) { return serviceActionMap.get(service); } - + public static Map> getSercieNameMap() { return sercieNameMap; } @@ -112,8 +142,5 @@ public class ServiceAndRDBIndexReal { public static void setServiceDBIndexmap(Map> serviceDBIndexmap) { ServiceAndRDBIndexReal.serviceDBIndexmap = serviceDBIndexmap; } - - - - + } diff --git a/src/main/resources/maatXml/maat.xml b/src/main/resources/maatXml/maat.xml index 8ad42b1..6dd52dd 100644 --- a/src/main/resources/maatXml/maat.xml +++ b/src/main/resources/maatXml/maat.xml @@ -5,7 +5,7 @@ - EFFECTIVE_RULE;:;FILE_INDEX_INFO;,;[cfg_id] + EFFECTIVE_RULE;:;{un_maat_table_name};,;[cfg_id] [cfg_id];\t;[is_valid];\t;[dst_file];\t;[dst_file_md5];\t;[time_stamp]; [level];\t;[file_id];\n @@ -26,7 +26,7 @@ - EFFECTIVE_RULE;:;mark_sample;,;[cfg_id] + EFFECTIVE_RULE;:;{un_maat_table_name};,;[cfg_id] [cfg_id];\t;[service];\t;[level];\t;[description];\t;[is_valid] diff --git a/src/main/resources/serviceTable.properties b/src/main/resources/serviceTable.properties index 3d87f7e..c631cab 100644 --- a/src/main/resources/serviceTable.properties +++ b/src/main/resources/serviceTable.properties @@ -5,31 +5,91 @@ ####3:例如:80=10:MM_COMPILE;11:MM_GROUP;12:AV_CONT_IP_PORT ####4:type中10代表是编译配置,11代表是分组配置,12代表是ip类域配置,13代表是数值类配置,14代表是字符串类域配置,15代表是增强字符串类域配置,16代表是文件摘要类域配置,17代表是文本相似性域配置 ################################################################################# -service=1:128;2:128;3:32;4:96;16:48;17:16;18:16;19:16;20:16;21:16;22:16;23:16;24:16;25:32;26:16;27:16;28:32;29:32;30:16;31:16;128:1;129:1;130:1;131:1;132:1;133:1;134:1;135:1;136:1;137:1;138:1;139:1;140:1;141:1;256:16;257:16;258:16;259:16;260:16;261:16;262:16;263:16;264:16;265:16;266:16;384:1;385:1;386:1;387:1;388:1;389:1;390:1;391:1;392:1;393:1;394:1;512:1;513:1;528:48;529:48;544:2;545:2;560:80;561:80;1024:16 +service=1:128;2:128;16:48;17:16;18:16;19:16;20:16;21:16;22:16;23:16;24:16;26:16;27:16;30:16;31:16;128:1;129:1;130:1;131:1;132:1;133:1;134:1;135:1;136:1;137:1;138:1;139:1;140:1;141:1;256:16;257:16;258:16;259:16;260:16;384:1;385:1;386:1;387:1;388:1;512:1;513:1;528:48;529:48;544:2;545:2;560:80;561:80; +#1024:16,不知道表名怎么写 +#30有问题:14:NTC_XMPP_REGION,NTC_XMPP_CONT不确定表是不是字符串类 +#31有问题:14:NTC_BGP_AS不确定表是不是字符串类 - - -17=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP 1=10:WHITE_LIST_COMPILE;11:WHITE_LIST_GROUP;12:WHITE_LIST_IP -80=10:MM_COMPILE;11:MM_GROUP;12:MM_AV_IP -81=10:MM_COMPILE;11:MM_GROUP;14:MM_AV_URL -82=10:MM_COMPILE;11:MM_GROUP;12:MM_PIC_IP -83=10:MM_COMPILE;11:MM_GROUP;13:MM_PIC_URL -84=10:MM_COMPILE;11:MM_GROUP;12:MM_VOIP_IP -85=10:MM_COMPILE;11:MM_GROUP;13:MM_VOIP_ACCOUNT +2=10:WHITE_LIST_COMPILE;11:WHITE_LIST_GROUP;14:WHITE_LIST_DOMAIN -144=10:MM_COMPILE;11:MM_GROUP;12:MM_AV_IP -145=10:MM_COMPILE;11:MM_GROUP;14:MM_AV_URL -146=10:MM_COMPILE;11:MM_GROUP;12:MM_PIC_IP -147=10:MM_COMPILE;11:MM_GROUP;13:MM_PIC_URL -148=10:MM_COMPILE;11:MM_GROUP;12:MM_VOIP_IP -149=10:MM_COMPILE;11:MM_GROUP;13:MM_VOIP_ACCOUNT +16=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_IP +17=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_HTTP_URL,NTC_HTTP_REQ_BODY,NTC_HTTP_RES_BODY;15:NTC_HTTP_REQ_HDR,NTC_HTTP_RES_HDR +18=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;15:NTC_DNS_REGION +19=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_SSL_SNI,NTC_SSL_SAN,NTC_SSL_CN +20=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;15:NTC_MAIL_HDR,NTC_MAIL_BODY;16:NTC_FILE_DIGEST +21=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_FTP_URL,NTC_FTP_CONTENT +22=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +23=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +24=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +26=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +27=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +30=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_XMPP_REGION,NTC_XMPP_CONT +31=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_BGP_AS + + +128=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_IP +129=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_HTTP_URL,NTC_HTTP_REQ_BODY,NTC_HTTP_RES_BODY;15:NTC_HTTP_REQ_HDR,NTC_HTTP_RES_HDR +130=10:NTC_COMPILE;11:NTC_GROUP;15:NTC_DNS_REGION +131=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_SSL_SNI,NTC_SSL_SAN,NTC_SSL_CN +132=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;15:NTC_MAIL_HDR,NTC_MAIL_BODY;16:NTC_FILE_DIGEST +133=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE;14:NTC_FTP_URL,NTC_FTP_CONTENT +134=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +135=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +136=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +137=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +138=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +139=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +140=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; +141=10:NTC_COMPILE;11:NTC_GROUP;12:NTC_UNIVERSAL_IP;13:NTC_UNIVERSAL_PROTO_TYPE; + +256=10:MM_COMPILE;11:MM_GROUP;12:MM_AV_IP +257=10:MM_COMPILE;11:MM_GROUP;14:MM_AV_URL +258=10:MM_COMPILE;11:MM_GROUP;12:MM_PIC_IP +259=10:MM_COMPILE;11:MM_GROUP;14:MM_PIC_URL +260=10:MM_COMPILE;11:MM_GROUP;12:MM_VOIP_IP;14:MM_VOIP_ACCOUNT + +384=10:MM_COMPILE;11:MM_GROUP;12:MM_AV_IP +385=10:MM_COMPILE;11:MM_GROUP;14:MM_AV_URL +386=10:MM_COMPILE;11:MM_GROUP;12:MM_PIC_IP +387=10:MM_COMPILE;11:MM_GROUP;14:MM_PIC_URL +388=10:MM_COMPILE;11:MM_GROUP;12:MM_VOIP_IP;14:MM_VOIP_ACCOUNT + +512=10:PXY_INTERCEPT_COMPILE;11:PXY_INTERCEPT_GROUP;12:PXY_INTERCEPT_IP +513=10:PXY_INTERCEPT_COMPILE;11:PXY_INTERCEPT_GROUP;14:PXY_INTERCEPT_DOMAI + +528=10:PXY_CTRL_COMPILE;11:PXY_CTRL_GROUP;12:PXY_CTRL_IP +529=10:PXY_CTRL_COMPILE;11:PXY_CTRL_GROUP;14:PXY_CTRL_HTTP_URL;15:PXY_CTRL_HTTP_REQ_HDR,PXY_CTRL_HTTP_RES_HDR,PXY_CTRL_HTTP_REQ_BODY,PXY_CTRL_HTTP_RES_BODY + +544=10:PXY_CTRL_COMPILE;11:PXY_CTRL_GROUP;12:PXY_CTRL_IP +545=10:PXY_CTRL_COMPILE;11:PXY_CTRL_GROUP;14:PXY_CTRL_HTTP_URL + +560=10:PXY_CTRL_COMPILE;11:PXY_CTRL_GROUP;15:PXY_CTRL_HTTP_REQ_BODY +561=10:PXY_CTRL_COMPILE;11:PXY_CTRL_GROUP;15:PXY_CTRL_HTTP_RES_BODY +unMaatService=3:32;4:96;25:32;28:32;29:32;261:16;262:16;263:16;264:16;265:16;266:16;389:1;390:1;391:1;392:1;393:1;394:1; +3=0:INLINE_IP +4=0:INLINE_IP +25=0:INLINE_IP +28=0:INLINE_IP +29=0:INLINE_IP +261=0:MM_SAMPLE_AUDIO +262=0:MM_SAMPLE_VIDEO +263=0:MM_SAMPLE_PIC +264=0:MM_SAMPLE_VOIP +265=0:MM_PORN_AUDIO_LEVEL +266=0:MM_PORN_VIDEO_LEVEL +389=0:MM_SAMPLE_AUDIO +390=0:MM_SAMPLE_VIDEO +391=0:MM_SAMPLE_PIC +392=0:MM_SAMPLE_VOIP +393=0:MM_PORN_AUDIO_LEVEL +394=0:MM_PORN_VIDEO_LEVEL ##各业务类型对应的redisdb,业务类型:redisdb,多个业务以“;”分隔,多个db以“,”数量不能超过6个 serviceDBIndex=3:2,3;1:2;80:2;81:2;82:2;83:2;84:2;85:2;144:2;145:2;146:2;147:2;148:2;149:2;96:3;97:3;98:3;99:3;160:3,4;161:3;162:3;163:3;100:3;101:3;164:3;165:3