This repository has been archived on 2025-09-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
dongxiaoyan-tsg-autotest/01-TestCase/tsg_bfapi/setting/VerifyProxy.robot

883 lines
109 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

*** Settings ***
Test Teardown DeletePolicyAndGroupObject ${policyIds} ${objectids}
Force Tags tsg_bf_api Trusted_Certificate_Authorities
Library String
Library OperatingSystem
Library Selenium2Library
Library Collections
Resource ../../../02-Keyword/tsg_bfapi/Common.robot
Resource ../../../02-Keyword/tsg_bfapi/policy_file_interface/FunctionalKeywords.robot
Resource ../../../03-Variable/BifangApiVariable.txt
Library OperatingSystem
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/ApiRequest.robot
Resource ../../../03-Variable/AllFlowCaseVariable.txt
Resource ../../../03-Variable/Policy_Objects_Module.txt
Resource ../../../02-Keyword/tsg_bfapi/PolicyObject.robot
Resource ../../../02-Keyword/tsg_bfapi/policy_object/Policy.robot
Resource ../../../02-Keyword/tsg_bfapi/policy_object/Object.robot
Resource ../../../02-Keyword/tsg_bfapi/policy_object/Log.robot
Resource ../../../02-Keyword/tsg_bfapi/Common.robot
Library json
Library DateTime
Library demjson
Resource ../../../02-Keyword/tsg_bfapi/policy_object/ProcessPolicyBody.robot
Library Custometest
*** Variables ***
${url} /v1/policy/profile/trustedcacertobj
${certId} ${EMPTY}
${policyIds} ${EMPTY}
${objectids} ${EMPTY}
*** Test Cases ***
VerifyProxy-Security-00001
# 新增 对象
# 创建源 ip
#此策略验证删除时调用DeletePolicyAndObject
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","objectSubType":"endpoint","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"autoPolicyVerifySource","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.3-192.168.50.3","ipIf":false,"portIf":false,"port":"0-65535","itemId":"","clientIp1":"192.168.50.3","clientIp2":"192.168.50.3","clientPort1":"0","clientPort2":"65535","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1602573149}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#E46D6D"}}
#{"opAction":"add","objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwqweqw","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.25","ipIf":false,"portIf":false,"port":"0-65535","itemId":"","clientIp1":"192.168.50.25","clientIp2":"192.168.50.25","clientPort1":"0","clientPort2":"65535","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1596177068}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
#${objectids} set Variable ${object_Source_Id}
${objlevel1} set variable ${object_Source_Id}
${objectids} Create List [${objlevel1}]
# 创建目的ip
${rescodeip} ${object_Destination_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","objectSubType":"endpoint","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"autoPolicyVerifyDestination","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"254.253.252.251","ipIf":false,"portIf":false,"port":"0-65535","itemId":"","clientIp1":"192.168.50.3","clientIp2":"192.168.50.3","clientPort1":"0","clientPort2":"65535","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1602573149}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#E46D6D"}}
#{"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"1231231231231","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"254.253.252.251","ipIf":false,"portIf":false,"port":"0-65535","itemId":"","clientIp1":"254.253.252.251","clientIp2":"254.253.252.251","clientPort1":"0","clientPort2":"65535","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1596176949}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Destination_Id}
${objlevel1} set variable ${object_Destination_Id}
${objectids} Create List [${objlevel1}]
#创建subid
${rescodeip} ${object_SubId_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"subscriberid","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"subid","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$test3"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_SubId_Id}
${objlevel1} set variable ${object_SubId_Id}
${objectids} Create List [${objlevel1}]
#创建 SNI
${rescodeip} ${object_SNI_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"sni","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verifytest"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_SNI_Id}
${objlevel1} set variable ${object_SNI_Id}
${objectids} Create List [${objlevel1}]
# 创建SAN
${rescodeip} ${object_SAN_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"SAN","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["*verify.com"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_SAN_Id}
${objlevel1} set variable ${object_SAN_Id}
${objectids} Create List [${objlevel1}]
# 创建 CN
${rescodeip} ${object_CN_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"cn","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verifytest.com"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_CN_Id}
${objlevel1} set variable ${object_CN_Id}
${objectids} Create List [${objlevel1}]
# 获取对象id集合
log ${objectids}
${objtype} Evaluate type($objectids)
log ${objtype}
#
#新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-00001","policyType":"tsg_security","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"SSL"},"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"},{"objectId":${object_SubId_Id},"protocolField":null}],"destination":[{"objectId":${object_Destination_Id},"protocolField":"TSG_SECURITY_DESTINATION_ADDR"}],"filterList":[{"filter":[{"objectId":${object_SNI_Id},"protocolField":"TSG_FIELD_SSL_SNI"}]},{"filter":[{"objectId":${object_SAN_Id},"protocolField":"TSG_FIELD_SSL_SAN"}]},{"filter":[{"objectId":${object_CN_Id},"protocolField":"TSG_FIELD_SSL_CN"}]}],"appIdObjects":[44],"appSelectorObjects":[],"isValid":1,"scheduleId":[]}}
${testType} Evaluate type($policyId)
#删除策略
${policyIds} Create List {"policyType":"tsg_security","policyIds":[${policyId}]}
${testType} Evaluate type($policyIds)
log 1232132131231313
# 获取策略id
log ${policyIds}
sleep 10
#新增策略验证
#创建attributes中的字典
${sni} Create Dictionary attributeType=string attributeName=sni appId=126 appName=ssl protocol=ssl attributeValue={"string": "verifytest"}
${san} Create Dictionary attributeType=string attributeName=san appId=126 appName=ssl protocol=ssl attributeValue={"string": "verify.com"}
${cn} Create Dictionary attributeType=string attributeName=cn appId=126 appName=ssl protocol=ssl attributeValue={"string": "verifytest.com"}
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "126"}
${subscriberid} Create Dictionary attributeType=string attributeName=subscriberid attributeValue={"string": "test3"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip":"192.168.50.3","port":"1","addrType":4,"protocol":"6","tableName":"TSG_SECURITY_SOURCE_ADDR"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip":"254.253.252.251","port":"1","addrType":4,"protocol":"6","tableName":"TSG_SECURITY_DESTINATION_ADDR"}
# 合成attributes字典集
${attributes} Create List ${sni} ${san} ${cn} ${app_id} ${subscriberid} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession}
log ${verifyList}
${rescode} ${resData} VerifyPolicies ${verifyList}
# 打印检查结果
# 将 策略id 加入对象 id
${objectid_verify} Catenate SEPARATOR=, ${object_Source_Id} ${object_Destination_Id} ${object_SubId_Id} ${object_SNI_Id} ${object_SAN_Id} ${object_CN_Id}
${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyId}
# ${objectids} Create List ${object_Source_Id} ${object_Destination_Id} ${object_SubId_Id} ${object_SNI_Id} ${object_SAN_Id} ${object_CN_Id} ${policyId}
# # 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
log 1111111111111111${objectid_verify}
${testType} Evaluate type($objectid_verify)
${testType} Evaluate type($resData)
log 222222222222222${resData}
sleep 5
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
# VerifyProxy-Security-00002
#002涉及新建category无法执行
# 新增 对象
# 创建源 ip
# ${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"zmmtest","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"fc00::2:25","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"fc00::2:25","clientIp2":"fc00::2:25","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":6,"direction":0,"temporaryItemId":1595474423}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
# ${objectids} set Variable ${object_Source_Id}
#创建 ip二层嵌套
# 创建源 ip
#${rescodeip} ${object_Source_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[${object_Source_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Source_Id_2}
# 创建url
#${rescodeip} ${object_URL_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"1231212","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["verifytest"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_URL_Id}
# 创建url二层嵌套
#${rescodeip} ${object_URL_Id_2} lAddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqewq","objectDesc":"","subObjectIds":[${object_URL_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_URL_Id_2}
#创建Host
# ${rescodeip} ${object_Host_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn_category","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["*verify.com"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Host_Id}
# # 创建url二层嵌套
# ${rescodeip} ${object_Host_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn_category","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[${object_Host_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Host_Id_2}
# #创建 Request Content
# ${rescodeip} ${object_Request_Content_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123112","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["verifytest*"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Request_Content_Id}
# #创建 Request Content二层嵌套
# ${rescodeip} ${object_Request_Content_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123112","objectDesc":"","subObjectIds":[${object_Request_Content_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Request_Content_Id_2}
# # 创建Response Content
# ${rescodeip} ${object_Response_Content_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"wwqwqwqwq","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["verifytest"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Response_Content_Id}
# # 创建Response Content 二层嵌套
# ${rescodeip} ${object_Response_Content_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"wwqwqwqwq","objectDesc":"","subObjectIds":[${object_Response_Content_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Response_Content_Id_2}
# # 创建Request Header
# ${rescodeip} ${object_Request_Header_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123131","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verifytest"],"isHexbin":0,"district":"User-Agent"},{"keywordArray":["verify"],"isHexbin":0,"district":"Cookie"}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Request_Header_Id}
# # 创建Request Header 二层嵌套
# ${rescodeip} ${object_Request_Header_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123131","objectDesc":"","subObjectIds":[${object_Request_Header_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Request_Header_Id_2}
# # 创建Response_Header
# ${rescodeip} ${object_Response_Header_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123123123","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verifytest"],"isHexbin":0,"district":"Set-Cookie"},{"keywordArray":["test"],"isHexbin":0,"district":"Content-Type"}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Response_Header_Id}
# # 创建Response_Header 二层嵌套
# ${rescodeip} ${object_Response_Header_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123123123","objectDesc":"","subObjectIds":[${object_Response_Header_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
# ${objectids} Catenate SEPARATOR=, ${objectids} ${object_Response_Header_Id_2}
# # 获取对象id集合
# log ${objectids}
# # 新增策略
# ${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-00002","policyType":"tsg_security","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"HTTP"},"source":[{"objectId":${object_Source_Id_2},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[{"filter":[{"objectId":${object_URL_Id_2},"protocolField":"TSG_FIELD_HTTP_URL"}]},{"filter":[{"objectId":${object_Host_Id_2},"protocolField":"TSG_FIELD_HTTP_HOST"}]},{"filter":[{"objectId":${object_Request_Content_Id_2},"protocolField":"TSG_FIELD_HTTP_REQ_CONTENT"}]},{"filter":[{"objectId":${object_Response_Content_Id_2},"protocolField":"TSG_FIELD_HTTP_RES_CONTENT"}]},{"filter":[{"objectId":${object_Request_Header_Id_2},"protocolField":"TSG_FIELD_HTTP_REQ_HDR"}]},{"filter":[{"objectId":${object_Response_Header_Id_2},"protocolField":"TSG_FIELD_HTTP_RES_HDR"}]}],"appIdObjects":[2],"isValid":1,"scheduleId":[]}}
# log ${policyId}
# #删除策略
# ${policyIds} Create List {"policyType":"tsg_security","policyIds":[${policyId}]}
# # # 获取策略id
# log ${policyIds}
# sleep 60
# # # 新增策略验证
# # 创建attributes中的字典
# ${url} Create Dictionary attributeType=string attributeName=url protocol=http attributeValue={"string": "verifytest"}
# ${host} Create Dictionary attributeType=string attributeName=host protocol=http attributeValue={"string": "verify.com"}
# ${req_body} Create Dictionary attributeType=string attributeName=req_body protocol=http attributeValue={"string": "verifytest"}
# ${res_body} Create Dictionary attributeType=string attributeName=res_body protocol=http attributeValue={"string": "verifytest"}
# ${req_hdr_ua} Create Dictionary attributeType=signature attributeName=req_hdr protocol=http attributeValue={"string": "verifytest","district": "User-Agent"}
# ${req_hdr_ck} Create Dictionary attributeType=signature attributeName=req_hdr protocol=http attributeValue={"string": "verify","district": "Cookie"}
# ${res_hdr_sc} Create Dictionary attributeType=signature attributeName=res_hdr protocol=http attributeValue={"string": "verifytest","district": "Set-Cookie"}
# ${res_hdr_ct} Create Dictionary attributeType=signature attributeName=res_hdr protocol=http attributeValue={"string": "test","district": "Content-Type"}
# ${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "http."}
# ${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "fc00::2:25","port": "80","tableName":"TSG_SECURITY_SOURCE_ADDR","addrType": 6,"protocol": "6"}
# ${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "fc00::2:25","port": "80","tableName":"TSG_SECURITY_DESTINATION_ADDR","addrType": 6,"protocol": "6"}
# # 合成attributes字典集
# ${attributes} Create List ${url} ${host} ${req_body} ${res_body} ${req_hdr_ua} ${req_hdr_ck} ${res_hdr_sc} ${res_hdr_ct} ${app_id} ${ipsource} ${ipdestination}
# ${verifySession} Create Dictionary attributes=${attributes}
# ${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession}
# log 111111111111111111111111111111
# log ${verifyList}
# log 11111111111111111111111111111
# ${rescode} ${resData} VerifyPolicies ${verifyList}
# # 打印检查结果
# # 将 策略id 加入对象 id
# ${objectid_verify} set variable ${objectids}
# ${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyId}
# # 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
# ${ok} VerifyProxy ${resData} ${objectid_verify}
# # # ${ok} VerifyProxy ${objectids} ${resData}
# Should Be Equal As Strings ${ok} ture
VerifyProxy-Security-00003
# 新增 对象
# 创建源 ip
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.3","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"192.168.50.3","clientIp2":"192.168.50.3","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595312834}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
#${objectids} Create List ${object_Source_Id}
${objlevel1} set variable ${object_Source_Id}
${objectids} Create List [${objlevel1}]
#创建 ip二层嵌套
${rescodeip} ${object_Source_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[${object_Source_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
#Insert Into List ${objectids} 0 ${object_Source_Id_2}
${objlevel2} set variable ${object_Source_Id_2}
${objectids} Create List [${objlevel2}] [${objlevel1}]
#创建 ip三层嵌套
${rescodeip} ${object_Source_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[${object_Source_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
#Insert Into List ${objectids} 0 ${object_Source_Id_3}
${objlevel3} set variable ${object_Source_Id_3}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建目的ip
${rescodeip} ${object_Destination_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"252.252.252.252","ipIf":false,"portIf":false,"port":"443","itemId":"","clientIp1":"252.252.252.252","clientIp2":"252.252.252.252","clientPort1":"443","clientPort2":"443","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595313199}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
# #${objectids} Catenate SEPARATOR=, ${objectids} ${object_Destination_Id}
#Insert Into List ${objectids} 0 ${object_Destination_Id}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Destination_Id}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建 目的ip二层嵌套
${rescodeip} ${object_Destination_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Destination_Id_2}
#Insert Into List ${objectids} 0 ${object_Destination_Id_2}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Destination_Id_2}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建 目的ip三层嵌套
${rescodeip} ${object_Destination_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Destination_Id_3}
#Insert Into List ${objectids} 0 ${object_Destination_Id_3}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Destination_Id_3}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 QNAME:FQDN
${rescodeip} ${object_QNAME_FQDN_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"QNAME_FQDN","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verify"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#Insert Into List ${objectids} 0 ${object_QNAME_FQDN_Id}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_QNAME_FQDN_Id}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 QNAME:FQDN 二层嵌套
${rescodeip} ${object_QNAME_FQDN_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"QNAME_FQDN","objectDesc":"","subObjectIds":[${object_QNAME_FQDN_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_QNAME_FQDN_Id_2}
#Insert Into List ${objectids} 0 ${object_QNAME_FQDN_Id_2}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_QNAME_FQDN_Id_2}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 QNAME:FQDN 三层嵌套
${rescodeip} ${object_QNAME_FQDN_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"QNAME_FQDN","objectDesc":"","subObjectIds":[${object_QNAME_FQDN_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_QNAME_FQDN_Id_3}
#Insert Into List ${objectids} 0 ${object_QNAME_FQDN_Id_3}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_QNAME_FQDN_Id_3}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
#获取对象id集合
#${objectids} Create List [${object_QNAME_FQDN_Id_3}] [${object_QNAME_FQDN_Id_2}] [${object_QNAME_FQDN_Id}] [${object_Destination_Id_3}] [${object_Destination_Id_2}] [${object_Destination_Id}] [${object_Source_Id_3}] [${object_Source_Id_2}] [${object_Source_Id}]
#${objectids} Catenate SEPARATOR=, ${object_QNAME_FQDN_Id_3} ${object_QNAME_FQDN_Id_2} ${object_QNAME_FQDN_Id} ${object_Destination_Id_3} ${object_Destination_Id_2} ${object_Destination_Id} ${object_Source_Id_3} ${object_Source_Id_2} ${object_Source_Id}
log ${objectids}
#sleep 5
#新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"asfafsadfa","policyType":"tsg_security","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"DNS"},"source":[{"objectId":${object_Source_Id_3},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[{"objectId":${object_Destination_Id_3},"protocolField":"TSG_SECURITY_DESTINATION_ADDR"}],"filterList":[{"filter":[{"objectId":${object_QNAME_FQDN_Id_3},"protocolField":"TSG_FIELD_DNS_QNAME"}]}],"appIdObjects":[21],"isValid":1,"scheduleId":[]}}
${testType} Evaluate type($policyId)
log ${policyId}
#删除策略
${policyIds} Create List {"policyType":"tsg_security","policyIds":[${policyId}]}
# # 获取策略id
log ${policyIds}
sleep 10
# 新增策略验证
# 创建attributes中的字典
${qname_fqdn_id} Create Dictionary attributeType=string attributeName=qname appId=103 appName=dns protocol=dns attributeValue={"string": "verify"}
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string":"103" }
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "192.168.50.3","port": "80","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "252.252.252.252","port": "443","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${qname_fqdn_id} ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
# 打印检查结果
# 将 策略id 加入对象 id
#${objectid_verify} set variable ${objectids}
${objectid_verify} Catenate SEPARATOR=, ${object_Source_Id_3} ${object_Source_Id} ${object_Destination_Id_3} ${object_Destination_Id} ${object_QNAME_FQDN_Id} ${object_QNAME_FQDN_Id_3} ${policyId}
${testType} Evaluate type($objectid_verify)
sleep 5
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
${ok} VerifyProxy ${resData} ${objectid_verify}
#${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00005
# 创建目的ip
${rescodeip} ${object_Destination_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"11.11.11.11","ipIf":false,"portIf":false,"port":"11","itemId":"","clientIp1":"11.11.11.11","clientIp2":"11.11.11.11","clientPort1":"11","clientPort2":"11","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595313199}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel1} Set Variable ${object_Destination_Id}
${objectids} Create List [${objlevel1}]
# 创建 目的ip 二层嵌套
${rescodeip} ${object_Destination_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel2} Set Variable ${object_Destination_Id_2}
${objectids} Create List [${objlevel2}] [${objlevel1}]
# 创建 目的ip 三层嵌套
${rescodeip} ${object_Destination_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel3} Set Variable ${object_Destination_Id_3}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 目的ip 四层嵌套
${rescodeip} ${object_Destination_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel4} Set Variable ${object_Destination_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Subject
${rescodeip} ${object_Subject_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Subject_Id}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Subject 二层嵌套
${rescodeip} ${object_Subject_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Subject_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Subject_Id_2}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Subject 三层嵌套
${rescodeip} ${object_Subject_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Subject_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Subject_Id_3}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Subject 四层嵌套
${rescodeip} ${object_Subject_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Subject_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_Subject_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Content
${rescodeip} ${object_Content_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"1221321","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Content_Id}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Content 二层嵌套
${rescodeip} ${object_Content_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Content_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Content_Id_2}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Content 三层嵌套
${rescodeip} ${object_Content_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Content_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Content_Id_3}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Content 四层嵌套
${rescodeip} ${object_Content_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Content_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_Content_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Attachment Name
${rescodeip} ${object_Attachment_Name_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Attachment_Name_Id}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建Attachment Name 二层嵌套
${rescodeip} ${object_Attachment_Name_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Attachment_Name_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Attachment_Name_Id_2}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Attachment Name 三层嵌套
${rescodeip} ${object_Attachment_Name_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Attachment_Name_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Attachment_Name_Id_3}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Attachment Name 四层嵌套
${rescodeip} ${object_Attachment_Name_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Attachment_Name_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_Attachment_Name_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Attachment Content
${rescodeip} ${object_Attachment_Content_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Attachment_Content_Id}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Attachment Content 二层嵌套
${rescodeip} ${object_Attachment_Content_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Attachment_Content_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Attachment_Content_Id_2}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Attachment Content 三层嵌套
${rescodeip} ${object_Attachment_Content_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Attachment_Content_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Attachment_Content_Id_3}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建Attachment Content 四层嵌套
${rescodeip} ${object_Attachment_Content_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_Attachment_Content_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_Attachment_Content_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 From
${rescodeip} ${object_From_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqeq","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_From_Id}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建From 二层嵌套
${rescodeip} ${object_From_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_From_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_From_Id_2}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建From 三层嵌套
${rescodeip} ${object_From_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_From_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_From_Id_3}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建From 四层嵌套
${rescodeip} ${object_From_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_From_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_From_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建To
${rescodeip} ${object_To_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqeq","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_To_Id}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建To 二层嵌套
${rescodeip} ${object_To_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_To_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_To_Id_2}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 To 三层嵌套
${rescodeip} ${object_To_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_To_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_To_Id_3}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建To 四层嵌套
${rescodeip} ${object_To_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwe","objectDesc":"","subObjectIds":[${object_To_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_To_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#${objectids} Create List [${object_To_Id_4}] [${object_To_Id_3}] [${object_To_Id_2}] [${object_To_Id}] [${object_From_Id_4}] [${object_From_Id_3}] [${object_From_Id_2}] [${object_From_Id}] [${object_Attachment_Content_Id_4}] [${object_Attachment_Content_Id_3}] [${object_Attachment_Content_Id_2}] [${object_Attachment_Content_Id}] [${object_Attachment_Name_Id_4}] [${object_Attachment_Name_Id_3}] ${object_Attachment_Name_Id_2}] [${object_Attachment_Name_Id}] [${object_Content_Id_4}] [${object_Content_Id_3}] [${object_Content_Id_2}] [${object_Content_Id}] [${object_Subject_Id_4}] [${object_Subject_Id_3}] [${object_Subject_Id_2}] [${object_Subject_Id}] [${object_Destination_Id_4}] [${object_Destination_Id_3}] [${object_Destination_Id_2}] [${object_Destination_Id}]
# 获取对象id集合
log ${objectids}
# 新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"zxcvzxcvxz","policyType":"tsg_security","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"MAIL"},"source":[],"destination":[{"objectId":${object_Destination_Id_4},"protocolField":"TSG_SECURITY_DESTINATION_ADDR"}],"filterList":[{"filter":[{"objectId":${object_Subject_Id_4},"protocolField":"TSG_FIELD_MAIL_SUBJECT"}]},{"filter":[{"objectId":${object_Content_Id_4},"protocolField":"TSG_FIELD_MAIL_CONTENT"}]},{"filter":[{"objectId":${object_Attachment_Name_Id_4},"protocolField":"TSG_FIELD_MAIL_ATT_NAME"}]},{"filter":[{"objectId":${object_Attachment_Content_Id_4},"protocolField":"TSG_FIELD_MAIL_ATT_CONTENT"}]},{"filter":[{"objectId":${object_From_Id_4},"protocolField":"TSG_FIELD_MAIL_FROM"}]},{"filter":[{"objectId":${object_To_Id_4},"protocolField":"TSG_FIELD_MAIL_TO"}]}],"appIdObjects":[28],"isValid":1,"scheduleId":[]}}
log ${policyId}
#删除策略
${policyIds} Create List {"policyType":"tsg_security","policyIds":[${policyId}]}
# # 获取策略id
log ${policyIds}
sleep 10
# # 新增策略验证
# 创建attributes中的字典
${subject_id} Create Dictionary attributeType=string attributeName=subject appId=110 appName=mail protocol=mail attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${content_id} Create Dictionary attributeType=string attributeName=content appId=110 appName=mail protocol=mail attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${att_name_id} Create Dictionary attributeType=string attributeName=att_name appId=110 appName=mail protocol=mail attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${att_content_id} Create Dictionary attributeType=string attributeName=att_content appId=110 appName=mail protocol=mail attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${from_id} Create Dictionary attributeType=string attributeName=from appId=110 appName=mail protocol=mail attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${to_id} Create Dictionary attributeType=string attributeName=to appId=110 appName=mail protocol=mail attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${app_id} Create Dictionary attributeType=string attributeName=app_id protocol=mail attributeValue={"string": "110"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "11.11.11.11","port": "11","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "11.11.11.11","port": "11","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${subject_id} ${content_id} ${att_name_id} ${att_content_id} ${from_id} ${to_id} ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
sleep 10
# 打印检查结果
# 将 策略id 加入对象 id
${objectid_verify} set variable ${objectids}
${objectid_verify} Catenate SEPARATOR=, ${object_To_Id_4} ${object_To_Id} ${object_From_Id_4} ${object_From_Id} ${object_Attachment_Content_Id_4} ${object_Attachment_Content_Id} ${object_Attachment_Name_Id_4} ${object_Attachment_Name_Id} ${object_Content_Id_4} ${object_Content_Id} ${object_Destination_Id_4} ${object_Destination_Id} ${policyId}
#sleep 5
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00006
# 创建 目的ip
${rescodeip} ${object_Destination_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"11.11.11.11","ipIf":false,"portIf":false,"port":"11","itemId":"","clientIp1":"11.11.11.11","clientIp2":"11.11.11.11","clientPort1":"11","clientPort2":"11","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595313199}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel1} set Variable ${object_Destination_Id}
${objectids} Create List [${objlevel1}]
# 创建 目的ip 二层嵌套
${rescodeip} ${object_Destination_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel2} set Variable ${object_Destination_Id_2}
${objectids} Create List [${objlevel2}] [${objlevel1}]
# 创建 目的ip 三层嵌套
${rescodeip} ${object_Destination_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel3} set Variable ${object_Destination_Id_3}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 目的ip 四层嵌套
${rescodeip} ${object_Destination_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[${object_Destination_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel4} set Variable ${object_Destination_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Account
${rescodeip} ${object_Account_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqeq","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["abc***?????"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Account_Id}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Account 二层嵌套
${rescodeip} ${object_Account_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqeq","objectDesc":"","subObjectIds":[${object_Account_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Account_Id_2}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Account 三层嵌套
${rescodeip} ${object_Account_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqeq","objectDesc":"","subObjectIds":[${object_Account_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Account_Id_3}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建 Account 四层嵌套
${rescodeip} ${object_Account_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqeq","objectDesc":"","subObjectIds":[${object_Account_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_Account_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 获取对象id集合
${objectids} Create List [${object_Account_Id_4}] [${object_Account_Id_3}] [${object_Account_Id_2}] [${object_Account_Id}] [${object_Destination_Id_4}] [${object_Destination_Id_3}] [${object_Destination_Id_2}] [${object_Destination_Id}]
log ${objectids}
# 新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"qweqwewq","policyType":"tsg_security","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"MAIL"},"source":[],"destination":[{"objectId":${object_Destination_Id_4},"protocolField":"TSG_SECURITY_DESTINATION_ADDR"}],"filterList":[{"filter":[{"objectId":${object_Account_Id_4},"protocolField":"TSG_FIELD_MAIL_ACCOUNT"}]}],"appIdObjects":[28],"isValid":1,"scheduleId":[]}}
log ${policyId}
#删除策略
${policyIds} Create List {"policyType":"tsg_security","policyIds":[${policyId}]}
# # 获取策略id
log ${policyIds}
#sleep 20
# # 新增策略验证
# 创建attributes中的字典
${account_id} Create Dictionary attributeType=string attributeName=account appId=110 appName=mail protocol=mail attributeValue={"string": "abc***?????"}
${app_id} Create Dictionary attributeType=string attributeName=app_id protocol=mail attributeValue={"string": "110"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "11.11.11.11","port": "11","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "11.11.11.11","port": "11","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${account_id} ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession}
sleep 6
${rescode} ${resData} VerifyPolicies ${verifyList}
# 打印检查结果
# 将 策略id 加入对象 id
#${objectid_verify} set variable ${objectids}
${objectid_verify} Catenate SEPARATOR=, ${object_Account_Id_4} ${object_Account_Id} ${object_Destination_Id_4} ${object_Destination_Id} ${policyId}
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
sleep 9
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00007
# 新增 对象
# 创建源 ip
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"zmmtest","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.25","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"192.168.50.25","clientIp2":"192.168.50.25","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595474423}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
${objlevel1} set Variable ${object_Source_Id}
${objectids} Create List [${objlevel1}]
#创建 ip 二层嵌套
${rescodeip} ${object_Source_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[${object_Source_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel2} set Variable ${object_Source_Id_2}
${objectids} Create List [[${objlevel1}]] [${objlevel1}]
#创建 ip 三层嵌套
${rescodeip} ${object_Source_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[${object_Source_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel3} set Variable ${object_Source_Id_3}
${objectids} Create List [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建 ip 四层嵌套
${rescodeip} ${object_Source_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[${object_Source_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel4} set Variable ${object_Source_Id_4}
${objectids} Create List [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建 ip 五层嵌套
${rescodeip} ${object_Source_Id_5} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"source","objectDesc":"","subObjectIds":[${object_Source_Id_4}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${objlevel5} set Variable ${object_Source_Id_5}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建url
${rescodeip} ${object_URL_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123131","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_URL_Id}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建url 二层嵌套
${rescodeip} ${object_URL_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqewq","objectDesc":"","subObjectIds":[${object_URL_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_URL_Id_2}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建url 三层嵌套
${rescodeip} ${object_URL_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqewq","objectDesc":"","subObjectIds":[${object_URL_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_URL_Id_3}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建url 四层嵌套
${rescodeip} ${object_URL_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqewq","objectDesc":"","subObjectIds":[${object_URL_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_URL_Id_4}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建url 五层嵌套
${rescodeip} ${object_URL_Id_5} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"qwewqewq","objectDesc":"","subObjectIds":[${object_URL_Id_4}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel5} Catenate SEPARATOR=, ${objlevel5} ${object_URL_Id_5}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建Content
${rescodeip} ${object_Content_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"23423423","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Content_Id}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建Content 二层嵌套
${rescodeip} ${object_Content_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[${object_Content_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Content_Id_2}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建Content 三层嵌套
${rescodeip} ${object_Content_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[${object_Content_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Content_Id_3}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建Content 四层嵌套
${rescodeip} ${object_Content_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[${object_Content_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_Content_Id_4}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
# 创建Content 五层嵌套
${rescodeip} ${object_Content_Id_5} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[${object_Content_Id_4}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel5} Catenate SEPARATOR=, ${objlevel5} ${object_Content_Id_5}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建 Account
${rescodeip} ${object_Account_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"23131123","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel1} Catenate SEPARATOR=, ${objlevel1} ${object_Account_Id}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建Account 二层嵌套
${rescodeip} ${object_Account_Id_2} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123112","objectDesc":"","subObjectIds":[${object_Account_Id}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel2} Catenate SEPARATOR=, ${objlevel2} ${object_Account_Id_2}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建Account 三层嵌套
${rescodeip} ${object_Account_Id_3} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123112","objectDesc":"","subObjectIds":[${object_Account_Id_2}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel3} Catenate SEPARATOR=, ${objlevel3} ${object_Account_Id_3}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建Account 四层嵌套
${rescodeip} ${object_Account_Id_4} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123112","objectDesc":"","subObjectIds":[${object_Account_Id_3}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel4} Catenate SEPARATOR=, ${objlevel4} ${object_Account_Id_4}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#创建Account 五层嵌套
${rescodeip} ${object_Account_Id_5} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"account","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123112","objectDesc":"","subObjectIds":[${object_Account_Id_4}],"addItemList":[],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${objlevel5} Catenate SEPARATOR=, ${objlevel5} ${object_Account_Id_5}
${objectids} Create List [${objlevel5}] [${objlevel4}] [${objlevel3}] [${objlevel2}] [${objlevel1}]
#${objectids} Create List [${object_Account_Id_5}] [${object_Account_Id_4}] [${object_Account_Id_3}] [${object_Account_Id_2}] [${object_Account_Id}] [${object_Content_Id_5}] [${object_Content_Id_4}] [${object_Content_Id_3}] [${object_Content_Id_2}] [${object_Content_Id}] [${object_URL_Id_5}] [${object_URL_Id_4}] [${object_URL_Id_3}] [${object_URL_Id_2}] [${object_URL_Id}] [${object_Source_Id_5}] [${object_Source_Id_4}] [${object_Source_Id_3}] [${object_Source_Id_2}] [${object_Source_Id}]
# 获取对象id集合
log ${objectids}
# 新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-00007","policyType":"tsg_security","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"FTP"},"source":[{"objectId":${object_Source_Id_5},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[{"filter":[{"objectId":${object_URL_Id_5},"protocolField":"TSG_FIELD_FTP_URI"}]},{"filter":[{"objectId":${object_Content_Id_5},"protocolField":"TSG_FIELD_FTP_CONTENT"}]},{"filter":[{"objectId":${object_Account_Id_5},"protocolField":"TSG_FIELD_FTP_ACCOUNT"}]}],"appIdObjects":[22],"isValid":1,"scheduleId":[]}}
log ${policyId}
#删除策略
${policyIds} Create List {"policyType":"tsg_security","policyIds":[${policyId}]}
# # 获取策略id
log ${policyIds}
sleep 20
# # 新增策略验证
# 创建attributes中的字典
${url} Create Dictionary attributeType=string attributeName=url appId=104 appName=ftp protocol=ftp attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${Content} Create Dictionary attributeType=string attributeName=content appId=104 appName=ftp protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${Account} Create Dictionary attributeType=string attributeName=account appId=104 appName=ftp protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "104"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "192.168.50.25","port": "80","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "192.168.50.25","port": "80","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${url} ${Content} ${Account} ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
# 打印检查结果
# 将 策略id 加入对象 id
${objectid_verify} set variable ${objectids}
${objectid_verify} Catenate SEPARATOR=, ${object_Account_Id_5} ${object_Account_Id} ${object_Content_Id_5} ${object_Content_Id} ${object_URL_Id_5} ${object_Source_Id} ${object_URL_Id} ${object_Source_Id_5} ${policyId}
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00008
# 新增 对象
# 创建源 ip
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"zmmtest","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.3","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"192.168.50.25","clientIp2":"192.168.50.25","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595474423}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
${objectids} Create List [${object_Source_Id}]
# 获取对象id集合
log ${objectids}
# 新增策略 1
${rescode} ${policyId1} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000081","policyType":"tsg_security","action":"allow","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"SSL"},"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[44],"isValid":1,"scheduleId":[]}}
log ${policyId1}
sleep 10
# 新增策略 2
${rescode} ${policyId2} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000082","policyType":"tsg_security","action":"deny","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"SSL","method":"drop"},"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[44],"isValid":1,"scheduleId":[]}}
log ${policyId2}
sleep 10
# 新增策略 3
${rescode} ${policyId3} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000083","policyType":"tsg_security","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"SSL"},"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[44],"isValid":1,"scheduleId":[]}}
log ${policyId3}
sleep 10
# 新增策略 4
${rescode} ${policyId4} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000084","policyType":"tsg_security","action":"intercept","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"protocol":"SSL","keyring":1,"decryption":1,"decrypt_mirror":{"enable":0,"mirror_profile":null}},"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[44],"isValid":1,"scheduleId":[]}}
log ${policyId4}
sleep 10
#删除策略
${policyIds} Create List {"policyType":"tsg_security","policyIds":[${policyId1},${policyId2},${policyId3},${policyId4}]}
# # 获取策略id
log ${policyIds}
#sleep 20
# # 新增策略验证
# 创建attributes中的字典
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "126"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "192.168.50.3","port": "80","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "192.168.50.3","port": "80","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=tsg_security verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
sleep 5
# 打印检查结果
# 将 策略id 加入对象 id
${objectid_verify} set variable ${object_Source_Id}
${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyId1} ${policyId2} ${policyId3} ${policyId4}
#${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyId2}
#${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyId3}
#${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyId4}
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
sleep 2
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00009
# 新增 对象
# 创建源 ip
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"zmmtest","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.3","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"192.168.50.3","clientIp2":"192.168.50.3","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595474423}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
#${objectids} set Variable ${object_Source_Id}
#创建subid
${rescodeip} ${object_SubId_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"subscriberid","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"subid","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$test3"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_SubId_Id}
# 创建目的ip
#${rescodeip} ${object_Destination_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"252.252.252.252 ","ipIf":false,"portIf":false,"port":"443","itemId":"","clientIp1":"252.252.252.252 ","clientIp2":"252.252.252.252 ","clientPort1":"43","clientPort2":"43","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595313199}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
${rescodeip} ${object_Destination_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"destination","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"11.11.11.11","ipIf":false,"portIf":false,"port":"11","itemId":"","clientIp1":"11.11.11.11","clientIp2":"11.11.11.11","clientPort1":"11","clientPort2":"11","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595313199}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
#${objectids} set Variable ${object_Destination_Id}
# 创建url
#${rescodeip} ${object_URL_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123131","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
${rescodeip} ${object_URL_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"url","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"1231212","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_URL_Id}
#创建fqdn
${rescodeip} ${object_QNAME_FQDN_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verify.test"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Host_Id}
# 创建Request Header
${rescodeip} ${object_Request_Header_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123131","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"district":"Cookie"}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Request_Header_Id}
# 创建Response_Header
${rescodeip} ${object_Response_Header_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123123123","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"district":"Set-Cookie"}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Response_Header_Id}
# 获取对象id集合
${objectids} Create List [${object_Response_Header_Id}] [${object_Request_Header_Id}] [${object_QNAME_FQDN_Id}] [${object_URL_Id}] [${object_Destination_Id}] [${object_SubId_Id}] [${object_Source_Id}]
log ${objectids}
# 新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"sakdfhsjkdahfaskdfjsah","policyType":"pxy_manipulation","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"method":"monitor","protocol":"HTTP"},"isValid":1,"objectIds":[],"objectList":[],"scheduleId":[],"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"},{"objectId":${object_SubId_Id},"protocolField":null}],"destination":[{"objectId":${object_Destination_Id},"protocolField":"TSG_SECURITY_DESTINATION_ADDR"}],"filterList":[{"filter":[{"objectId":${object_URL_Id},"protocolField":"TSG_FIELD_HTTP_URL"}]},{"filter":[{"objectId":${object_QNAME_FQDN_Id},"protocolField":"TSG_FIELD_HTTP_HOST"}]},{"filter":[{"objectId":${object_Request_Header_Id},"protocolField":"TSG_FIELD_HTTP_REQ_HDR"}]},{"filter":[{"objectId":${object_Response_Header_Id},"protocolField":"TSG_FIELD_HTTP_RES_HDR"}]}],"appIdObjects":[24]}}
log ${policyId}
#删除策略
${policyIds} Create List {"policyType":"pxy_manipulation","policyIds":[${policyId}]}
# # 获取策略id
log ${policyIds}
sleep 10
# # 新增策略验证
# 创建attributes中的字典
${url} Create Dictionary attributeType=string attributeName=url appId=106 appName=http protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${qname_fqdn_id} Create Dictionary attributeType=string attributeName=host appId=106 appName=http protocol=http attributeValue={"string": "verify.test"}
${req_hdr_ck} Create Dictionary attributeType=signature attributeName=req_hdr appId=106 appName=http protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂","district": "Cookie"}
${res_hdr_sc} Create Dictionary attributeType=signature attributeName=res_hdr appId=106 appName=http protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂","district": "Set-Cookie"}
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "106"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "192.168.50.3","port": "80","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "11.11.11.11","port": "11","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${url} ${qname_fqdn_id} ${req_hdr_ck} ${res_hdr_sc} ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=pxy_manipulation verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
sleep 10
# 打印检查结果
# 将 策略id 加入对象 id
#${objectid_verify} set variable ${objectids}
${objectid_verify} Catenate SEPARATOR=, ${object_Response_Header_Id} ${object_QNAME_FQDN_Id} ${object_URL_Id} ${object_Destination_Id} ${object_Source_Id} ${policyId}
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00010
# 创建目的ip
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"zccxcxczxcc","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"fc00::2:25","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"fc00::2:25","clientIp2":"fc00::2:25","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":6,"direction":0,"temporaryItemId":1595846725}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":"","objectSubType":"endpoint"}}
#${objectids} set Variable ${object_Source_Id}
# 创建Request Header
${rescodeip} ${object_Request_Header_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123131","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"district":"User-Agent"}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Request_Header_Id}
# 创建Response_Header
${rescodeip} ${object_Response_Header_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"http_signature","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123123123","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"district":"Content-Type"}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Response_Header_Id}
#创建 Request Content
${rescodeip} ${object_Request_Content_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"123123112","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Request_Content_Id}
# 创建Response Content
${rescodeip} ${object_Response_Content_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"keywords","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"wwqwqwqwq","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"],"isHexbin":0,"itemId":""}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Response_Content_Id}
# 获取对象id集合
${objectids} Create List [${object_Response_Content_Id}] [${object_Request_Content_Id}] [${object_Response_Header_Id}] [${object_Request_Header_Id}] [${object_Source_Id}]
log ${objectids}
# 新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Proxy-00010","policyType":"pxy_manipulation","action":"monitor","userTags":"","doBlacklist":0,"doLog":1,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"method":"monitor","protocol":"HTTP"},"isValid":1,"objectIds":[],"objectList":[],"scheduleId":[],"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[{"filter":[{"objectId":${object_Request_Header_Id},"protocolField":"TSG_FIELD_HTTP_REQ_HDR"}]},{"filter":[{"objectId":${object_Response_Header_Id},"protocolField":"TSG_FIELD_HTTP_RES_HDR"}]},{"filter":[{"objectId":${object_Request_Content_Id},"protocolField":"TSG_FIELD_HTTP_REQ_CONTENT"}]},{"filter":[{"objectId":${object_Response_Content_Id},"protocolField":"TSG_FIELD_HTTP_RES_CONTENT"}]}],"appIdObjects":[24]}}
log ${policyId}
#删除策略
${policyIds} Create List {"policyType":"pxy_manipulation","policyIds":[${policyId}]}
# # 获取策略id
log ${policyIds}
sleep 10
# # 新增策略验证
# 创建attributes中的字典
${req_body} Create Dictionary attributeType=string attributeName=req_body appId=106 appName=http protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${res_body} Create Dictionary attributeType=string attributeName=res_body appId=106 appName=http protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂"}
${req_hdr_ua} Create Dictionary attributeType=signature attributeName=req_hdr appId=106 appName=http protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂","district": "User-Agent"}
${res_hdr_ct} Create Dictionary attributeType=signature attributeName=res_hdr appId=106 appName=http protocol=http attributeValue={"string": "①②③🍀⚡🔥♠♣♧øØπ¯―﹨ˆ˜﹍﹎º¹²³⇚⇛♐✐✎✍ㄥㄦㄧㄨㄩыьэюяμτυφχψωāáǎàōó㊇㊈㊉☀ ☁ ☂","district": "Content-Type"}
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "106"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "fc00::2:25","port": "80","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 6,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "fc00::2:25","port": "80","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 6,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${req_body} ${res_body} ${req_hdr_ua} ${res_hdr_ct} ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=pxy_manipulation verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
# 打印检查结果
# 将 策略id 加入对象 id
${objectid_verify} set variable ${objectids}
${objectid_verify} Catenate SEPARATOR=, ${object_Response_Content_Id} ${object_Request_Content_Id} ${object_Request_Header_Id} ${object_Response_Header_Id} ${object_Source_Id} ${policyId}
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00011
# 创建源 ip
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"zmmtest","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.25","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"192.168.50.25","clientIp2":"192.168.50.25","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595474423}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
#${objectids} set Variable ${object_Source_Id}
#创建Host
${rescodeip} ${object_Host_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"asdfafa","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verify.dns.com"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_Host_Id}
# 创建 QNAME:FQDN
${rescodeip} ${object_QNAME_FQDN_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"fqdn","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"QNAME_FQDN","objectDesc":"","subObjectIds":[],"addItemList":[{"keywordArray":["$verifytest"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[],"objectId":"","iconColor":""}}
#${objectids} Catenate SEPARATOR=, ${objectids} ${object_QNAME_FQDN_Id}
# 获取对象id集合
${objectids} Create List [${object_QNAME_FQDN_Id}] [${object_Host_Id}] [${object_Source_Id}]
log ${objectids}
# 新增策略
${rescode} ${policyId} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Proxy-00011","policyType":"pxy_manipulation","action":"manipulation","userTags":"","doBlacklist":0,"doLog":2,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"method":"redirect","protocol":"DoH","resolution":[{"qtype":"A","answer":[{"atype":"A","value":"109.244.23.140","ttl":{"min":1,"max":1}}]}]},"isValid":1,"objectIds":[],"objectList":[],"scheduleId":[],"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[{"filter":[{"objectId":${object_Host_Id},"protocolField":"TSG_FIELD_DOH_HOST"}]},{"filter":[{"objectId":${object_QNAME_FQDN_Id},"protocolField":"TSG_FIELD_DOH_QNAME"}]}],"appIdObjects":[53]}}
log ${policyId}
#删除策略
${policyIds} Create List {"policyType":"pxy_manipulation","policyIds":[${policyId}]}
# # 获取策略id
log ${policyIds}
sleep 10
# # 新增策略验证
# 创建attributes中的字典
${host} Create Dictionary attributeType=string attributeName=host appId=135 appName=DoH protocol=DoH attributeValue={"string": "verify.dns.com"}
${qname} Create Dictionary attributeType=string attributeName=qname appId=135 appName=DoH protocol=DoH attributeValue={"string": "verifytest"}
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "135"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "192.168.50.25","port": "80","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "192.168.50.25","port": "80","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${host} ${qname} ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=pxy_manipulation verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
sleep 10
# 打印检查结果
# 将 策略id 加入对象 id
${objectid_verify} set variable ${objectids}
${objectid_verify} Catenate SEPARATOR=, ${object_QNAME_FQDN_Id} ${object_Host_Id} ${object_Source_Id} ${policyId}
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true
VerifyProxy-Security-00012
# 创建源 ip
${rescodeip} ${object_Source_Id} AddObject {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"hbntest","objectDesc":"","subObjectIds":[],"addItemList":[{"ip":"192.168.50.3","ipIf":false,"portIf":false,"port":"80","itemId":"","clientIp1":"192.168.50.3","clientIp2":"192.168.50.3","clientPort1":"80","clientPort2":"80","clientIpFormat":"range","clientPortFormat":"range","addrType":4,"direction":0,"temporaryItemId":1595474423}],"updateItemList":[],"deleteItemIds":[],"iconColor":"#31739C","objectSubType":"endpoint"}}
#${objectids} set Variable ${object_Source_Id}
${objectids} Create List [${object_Source_Id}]
# 获取对象id集合
log ${objectids}
# 新增策略
${rescode} ${policyId1} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000121","policyType":"pxy_manipulation","action":"allow","userTags":"","doBlacklist":0,"doLog":2,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"method":"allow","protocol":"HTTP"},"isValid":1,"objectIds":[],"objectList":[],"scheduleId":[],"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[24]}}
log ${policyId1}
sleep 5
# 新增策略
${rescode} ${policyId2} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000122","policyType":"pxy_manipulation","action":"allow","userTags":"","doBlacklist":0,"doLog":2,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"method":"allow","protocol":"HTTP"},"isValid":1,"objectIds":[],"objectList":[],"scheduleId":[],"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[24]}}
log ${policyId2}
sleep 5
# 新增策略
${rescode} ${policyId3} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000123","policyType":"pxy_manipulation","action":"allow","userTags":"","doBlacklist":0,"doLog":2,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"method":"allow","protocol":"HTTP"},"isValid":1,"objectIds":[],"objectList":[],"scheduleId":[],"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[24]}}
log ${policyId3}
sleep 5
# 新增策略
${rescode} ${policyId4} AddPolicy {"opAction":"add","returnData":1,"policyList":{"policyId":"","policyName":"VerifyProxy-Security-000124","policyType":"pxy_manipulation","action":"allow","userTags":"","doBlacklist":0,"doLog":2,"policyDesc":"","effectiveRange":{"tag_sets":[[]]},"userRegion":{"method":"allow","protocol":"HTTP"},"isValid":1,"objectIds":[],"objectList":[],"scheduleId":[],"source":[{"objectId":${object_Source_Id},"protocolField":"TSG_SECURITY_SOURCE_ADDR"}],"destination":[],"filterList":[],"appIdObjects":[24]}}
log ${policyId4}
sleep 5
#删除策略
${policyIds} Create List {"policyType":"pxy_manipulation","policyIds":[${policyId1},${policyId2},${policyId3},${policyId4}]}
# # 获取策略id
log ${policyIds}
#sleep 20
# # 新增策略验证
# 创建attributes中的字典
${app_id} Create Dictionary attributeType=string attributeName=app_id attributeValue={"string": "106"}
${ipsource} Create Dictionary attributeType=ip attributeName=source attributeValue={"ip": "192.168.50.3","port": "80","tableName": "TSG_SECURITY_SOURCE_ADDR","addrType": 4,"protocol": "6"}
${ipdestination} Create Dictionary attributeType=ip attributeName=destination attributeValue={"ip": "11.11.11.11","port": "800","tableName": "TSG_SECURITY_DESTINATION_ADDR","addrType": 4,"protocol": "6"}
# 合成attributes字典集
${attributes} Create List ${app_id} ${ipsource} ${ipdestination}
${verifySession} Create Dictionary attributes=${attributes}
${verifyList} Create Dictionary policyType=pxy_manipulation verifySession=${verifySession}
${rescode} ${resData} VerifyPolicies ${verifyList}
sleep 5
# 打印检查结果
${objectid_verify} set variable ${object_Source_Id}
# 将 策略id 加入对象 id
${objectid_verify} Catenate SEPARATOR=, ${objectid_verify} ${policyId1} ${policyId2} ${policyId3} ${policyId4}
# 调用关键字 提取应答json获取其中所有的id值并判断新下发的id值是否在应答json的id中
${ok} VerifyProxy ${resData} ${objectid_verify}
# # ${ok} VerifyProxy ${objectids} ${resData}
Should Be Equal As Strings ${ok} true