通过PA防火墙API获取防火墙策略

# 需要用firewall_ip、username、password获取
api_key = None
# 填写以下三项以获取api_key
firewall_ip = None
username = None
password = None

# 获取api key
def get_api_key(firewall_ip, username, password):
    api_key_url = f"https://{firewall_ip}/api/?type=keygen&user={username}&password={password}"
    response = requests.get(api_key_url, verify=False)
    xml_response = ET.fromstring(response.text)
    global api_key
    api_key = xml_response.find("./result/key").text
    return api_key

# 获取防火墙策略
def get_security_policy(firewall_ip, api_key):
    export_url = f"https://{firewall_ip}/api/?type=config&action=show&key={api_key}&xpath=/config/devices/entry/vsys/entry/rulebase/security"
    policy_response = requests.get(export_url, verify=False)
    return policy_response

在请求防火墙策略时需要提供参数api_key,所以要先获取到api_key。这里第一个函数get_api_key(firewall_ip, username, password)即用来实现此功能。get_security_policy(firewall_ip, api_key)函数则是用来获取防火墙策略。
PA的响应结果为XML格式如果需要进行格式转换可以查看:
python转xml为json

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值