*** Settings *** Library json Resource ../../03-Variable/BifangApiVariable.txt Resource ../../02-Keyword/tsg_adc/SystemCommand.robot Resource ../../02-Keyword/tsg_bfapi/PolicyObject.robot Resource ../../02-Keyword/tsg_bfapi/LogVariable.robot Resource ../../02-Keyword/tsg_bfapi/LogSchema.robot Resource ../../02-Keyword/tsg_adc/PolicyVertify.robot *** Test Cases *** case01 # 创建对象-IP # addItemList全参数:(为方便说明,将参数值拆分为几部分,其实际值为单条无空格/回车字符串,每部分内代表的各参数不可跳跃。) # [addrType]|[protocol]|[direction]|[isSession]# 第一部分(可省略) # [clientIpFormat]|[clientIp1]|[clientIp2]|[clientPort1/clientPort2]& 第二部分(不可省略) # [serverIpFormat]|[serverIp1]|[serverIp2]|[serverPort1/serverPort2]| 第三部分(可省略) # [isInitialize]|[itemName]|[itemDesc], 第四部分(可省略) # ... ${objectDict} Create Dictionary ... objectType=ip ... isValid=${1} ... addItemList=range|192.168.40.51|192.168.40.120|80/88 ${rescode} ${objectId} AddObject2 ${1} ${objectDict} # 创建对象-http_signature # addItemList全参数:(参数不可跳跃,[keywordArray]|[district]为必填,其它可省略) # [keywordArray]|[district]|[isHexbin]|[isInitialize]|[itemName]|[itemDesc],... ${objectDict} Create Dictionary ... objectType=http_signature ... isValid=${1} ... addItemList=abcd|Cookie ${rescode} ${objectId} AddObject2 ${1} ${objectDict} # 创建对象-url/fqdn/keywords/subscriberid/fqdn_category/account # addItemList全参数:(参数不可跳跃,[keywordArray]为必填,其它可省略) # [keywordArray]|[isHexbin]|[isInitialize]|[itemName]|[itemDesc],... ${objectDict} Create Dictionary ... objectType=url ... isValid=${1} ... addItemList=abcd&def ${rescode} ${objectId} AddObject2 ${1} ${objectDict} # 创建策略 ${policyDict} Create Dictionary ... policyName=test_policy_add ... policyType=tsg_security ... action=intercept ... effectiveRange=Nursurtan|Transtelecom&Astel,|Astel&Transtelecom ... userRegion=protocol:HTTP,keyring:${1} ... referenceObject=${objectId}|TSG_SECURITY_DESTINATION_ADDR ... isValid=${0} ${rescode} ${policyId} AddPolicy2 ${1} ${policyDict} case0x [Documentation] ... 字典说明(所有参数均不可省略): ... policyType tsg_security/pxy_manipulation ... appId HTTP/SSL/DNS/MAIL/FTP ... cfg (IP) ip|[v4/v6]|[ClientIP*]|[ClientPort*]|[ServerIP*]|[ServerPort*]|[Any/TCP/UDP] ... (String) str|[SubscriberID*]|[key*]=[value*]&... ... (Signature) dstr|[SubscriberID*]|[req_hdr/res_hdr]=[User-Agent/Cookie/Set-Cookie/Content-Type]#[value*]&... ... ps: '&'配置多条时以最后一个'|'后开始 ... 可参考下面例1-3 # 例1:IP类策略验证 ${dict1} Create Dictionary ... policyType=tsg_security ... appId=HTTP ... cfg=ip|v4|192.168.50.24|10000|172.16.0.1|80|UDP PolicyVertify ${dict1} # 例2:String类策略验证 ${dict2} Create Dictionary ... policyType=tsg_security ... appId=FTP ... cfg=str|$jwctest|account=anony* PolicyVertify ${dict2} # 例3:Signature类策略验证 ${dict} Create Dictionary ... policyType=tsg_security ... appId=FTP # HTTP/SSL/DNS/MAIL/FTP ... cfg=dstr|$test|req_hdr=User-Agent#aa&res_hdr=Content-Type#bb PolicyVertify ${dict}