86 lines
4.2 KiB
Plaintext
86 lines
4.2 KiB
Plaintext
*** 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}
|
||
|
||
|