API เด
เดญเตเดฏเตผเดคเตเดฅเดจเดเดณเตเด API เดชเตเดฐเดคเดฟเดเดฐเดฃเดเตเดเตพ เดตเดฟเดถเดเดฒเดจเด เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดชเดเดฐเดฃเดเตเดเดณเตเด เดเดฒเดจเดพเดคเตเดฎเดเดฎเดพเดฏเดฟ เดเดจเดฑเตเดฑเตเดฑเตเดเตเดฏเตเดฏเตเดจเตเดจเดคเต เดธเดพเดงเตเดฏเดฎเดพเดเตเดฎเตเดชเตเตพ, เดชเตเดฐเตเดเตเดฐเดพเด เดเตเดกเดฟเดจเตเดชเตเดชเด เดเดชเดฏเตเดเดฟเดเตเดเตเดฎเตเดชเตเตพ API-เดเดณเตเดฎเดพเดฏเตเดณเตเดณ เดเดถเดฏเดตเดฟเดจเดฟเดฎเดฏเดคเตเดคเดฟเดจเตเดฑเต เดชเตเตผเดฃเตเดฃ เดถเดเตเดคเดฟ เดตเตเดณเดฟเดชเตเดชเตเดเตเด. เดเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด, เด
เดคเต เดเดชเตเดชเตเดดเตเด เดถเตเดฐเดฆเตเดงเดฟเดเตเดเดชเตเดชเตเดเดพเดคเต เดคเตเดเดฐเตเดจเตเดจเต เดชเตเดคเตเดคเตบ เดธเตเดซเตเดฑเตเดฑเตโเดตเตเดฏเตผ เดกเตเดตเดฒเดชเตโเดฎเตเดจเตเดฑเต เดเดฟเดฑเตเดฑเต (เดเดจเดฟ เดฎเตเดคเตฝ เดชเตเดคเตเดคเตบ SDK เดเดจเตเดจเต เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต) เดเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เดชเตเดฏเดฟเดจเตเดฑเต เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต API เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเด, เดชเดเตเดทเต เดตเตเดฑเตเดคเต. เดเดคเต เดกเดตเดฒเดชเตเดชเตผเดฎเดพเดฐเตเดเตเดฏเตเด เดเดเตเดเตเดฎเตเดทเตป เดชเตเดฐเตเดฎเดฟเดเดณเตเดเตเดฏเตเด เดเตเดตเดฟเดคเดคเตเดคเต เดเดฃเตเดฏเดฎเดพเดฏเดฟ เดฒเดณเดฟเดคเดฎเดพเดเตเดเตเดจเตเดจเต. เดชเตเดคเตเดคเดฃเดฟเดจเต เดเดฏเดฟเดเต เดตเดฒเดฟเดฏ เดเดจเดชเตเดฐเตเดคเดฟ เดฒเดญเดฟเดเตเดเต, เด เดตเดฟเดเดตเต เดจเดฟเดเดคเตเดคเดพเดจเตเด เดชเตเดฐเดงเดพเดจ เดธเดตเดฟเดถเตเดทเดคเดเตพ เด
เดตเดฒเตเดเดจเด เดเตเดฏเตเดฏเดพเดจเตเด เดเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต.
เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเต เดธเดเตเดตเดฎเดพเดฏเดฟ API เดตเดฟเดเดธเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต, เดเดชเตเดชเตเตพ เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต เดฑเดฟเดฒเตเดธเต เดเตเดฏเตโเดคเต:
เดชเตเดฏเดฟเดจเตเดฑเต เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต API เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเด (เดจเดฟเดฒเดตเดฟเดฒเต เดชเดคเดฟเดชเตเดชเต 1.6) - API เดตเดดเดฟ เดเตบเดเตเดฐเตเตพ เดธเตเตผเดตเดฑเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเด (เดเตเดเดพเดคเต เดเตบเดเตเดฐเตเตพ เดธเตเตผเดตเตผ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดเตเดเตเดจเตเดจ เดเตเดฑเตเดฑเตโเดตเตเดเดณเดฟเตฝ เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เดเดดเดฟเดตเตเด)เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเต GAIA API (เดจเดฟเดฒเดตเดฟเดฒเต เดชเดคเดฟเดชเตเดชเต 1.4) - เดธเตเดฐเดเตเดทเดพ เดเตเดฑเตเดฑเตโเดตเตเดเดณเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดเดญเตเดทเดฃเดฟ เดคเดเดฏเตฝ API 1.0 โ เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเต เดเตเดฒเตเดกเดฟเตฝ เดเดฐเต เดธเดพเตปเดกเตเดฌเตเดเตเดธเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเตเดเดกเดจเตเดฑเดฟเดฑเตเดฑเดฟ เด เดตเดฏเตผเดจเดธเต API - เดเตเดฑเตเดฑเตโเดตเตเดเดณเดฟเตฝ เดเดกเดจเตเดฑเดฟเดฑเตเดฑเดฟ เด เดตเดฏเตผเดจเดธเต เดฌเตเดฒเตเดกเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเตเดธเตเดฐเดเตเดทเดพ เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดชเตเตผเดเตเดเตฝ API - SMB เดเตเดฑเตเดฑเตโเดตเต เดฎเดพเดจเตเดเตโเดฎเตเดจเตเดฑเต เดชเตเตผเดเตเดเดฒเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเด (SMB เดเตเดฑเตเดฑเตโเดตเตเดเดณเตเดเตเดเตเดฑเดฟเดเตเดเต เดเตเดเตเดคเตฝ )IoT API - IoT เดเตบเดเตเดฐเตเดณเดฑเตเดเดณเตเดฎเดพเดฏเตเดณเตเดณ เดเดเดชเตเดเตฝCloudGuard เดเดฃเดเตเดฑเตเดฑเต API - เดเตเดเต เดเตเดพเดฒเดฟCloudGuard เดเดฃเดเตเดฑเตเดฑเต (SD-WAN เดธเตเดฐเดเตเดทเดพ เดชเดฐเดฟเดนเดพเดฐเด)Dome9 API - เดเตเดเต เดเตเดพเดฒเดฟเดกเตเด9
เดชเตเดคเตเดคเตบ SDK เดจเดฟเดฒเดตเดฟเตฝ เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต API เดฏเตเดฎเดพเดฏเตเดณเตเดณ เดเดถเดฏเดตเดฟเดจเดฟเดฎเดฏเดคเตเดคเต เดชเดฟเดจเตเดคเตเดฃเดฏเตเดเตเดเตเดจเตเดจเต Gaia API. เด เดฎเตเดกเตเดฏเตเดณเดฟเดฒเต เดเดฑเตเดฑเดตเตเด เดชเตเดฐเดงเดพเดจเดชเตเดชเตเดเตเด เดเตเดฒเดพเดธเตเดเดณเตเด เดฐเตเดคเดฟเดเดณเตเด เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเดณเตเด เดเดเตเดเตพ เดจเตเดเตเดเตเด.
เดฎเตเดกเตเดฏเตเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต
ะัะปัะพะดัะปั cpapi เดตเตเดเดคเตเดคเดฟเดฒเตเด เดเดณเตเดชเตเดชเดคเตเดคเดฟเดฒเตเด เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต
เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต
cpapi เดฎเตเดกเตเดฏเตเดณเดฟเดจเตเดฑเต เดเดเดเดเตเดเดณเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป เดเดเตเดเตพเดเตเดเต, เดฎเตเดกเตเดฏเตเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดฑเดเตเดเตเดฎเดคเดฟ เดเตเดฏเตเดฏเตเดฃเตเดเดคเตเดฃเตเดเต. cpapi เดเตเดฑเดเตเดเดคเต เดฐเดฃเตเดเต เดเดตเดถเตเดฏเดฎเดพเดฏ เดเตเดฒเดพเดธเตเดเดณเตเดเตเดเดฟเดฒเตเด:
APClient ะธ APIClientArgs
from cpapi import APIClient, APIClientArgs
เดเตเดฒเดพเดธเต APIClientArgs API เดธเตเตผเดตเดฑเดฟเดฒเตเดเตเดเตเด เดเตเดฒเดพเดธเดฟเดฒเตเดเตเดเตเด เดเดฃเดเตเดทเตป เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพเดเตเดเต เดเดคเตเดคเดฐเดตเดพเดฆเดฟเดคเตเดคเดฎเตเดฃเตเดเต APClient API-เดฏเตเดฎเดพเดฏเตเดณเตเดณ เดเดถเดฏเดตเดฟเดจเดฟเดฎเดฏเดคเตเดคเดฟเดจเตเดฑเต เดเดคเตเดคเดฐเดตเดพเดฆเดฟเดคเตเดคเด.
เดเดฃเดเตเดทเตป เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดจเดฟเตผเดฃเตเดฃเดฏเดฟเดเตเดเตเดจเตเดจเต
API-เดฏเดฟเดฒเตเดเตเดเต เดเดฃเดเตเดฑเตเดฑเตเดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดตเดฟเดตเดฟเดง เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดจเดฟเตผเดตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดเตเดเตพ เดเตเดฒเดพเดธเดฟเดจเตเดฑเต เดเดฐเต เดเดฆเดพเดนเดฐเดฃเด เดธเตเดทเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต APIClientArgs. เดคเดคเตเดตเดคเตเดคเดฟเตฝ, เด เดคเดฟเดจเตเดฑเต เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดฎเตเตปเดเตเดเตเดเดฟ เดจเดฟเดถเตเดเดฏเดฟเดเตเดเดฟเดเตเดเตเดฃเตเดเต, เดจเดฟเดฏเดจเตเดคเตเดฐเดฃ เดธเตเตผเดตเดฑเดฟเตฝ เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเดฎเตเดชเตเตพ, เด เดต เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเตเดฃเตเดเดคเดฟเดฒเตเดฒ.
client_args = APIClientArgs()
เดเดจเตเดจเดพเตฝ เดเดฐเต เดฎเตเดจเตเดจเดพเด เดเดเตเดทเดฟ เดนเตเดธเตเดฑเตเดฑเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดฎเตเดชเตเตพ, API เดธเตเตผเดตเดฑเดฟเดจเตเดฑเต (เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเตผ เดเดจเตเดจเตเด เด เดฑเดฟเดฏเดชเตเดชเตเดเตเดจเตเดจเต) เดเตเดฑเดเตเดเดคเต IP เดตเดฟเดฒเดพเดธเดฎเต เดนเตเดธเตเดฑเตเดฑเต เดจเดพเดฎเดฎเต เดจเดฟเดเตเดเตพ เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดเตเดตเดเตเดฏเตเดณเตเดณ เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เดเดเตเดเตพ เดธเตเตผเดตเตผ เดเดฃเดเตเดทเตป เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเตผ เดจเดฟเตผเดตเตเดตเดเดฟเดเตเดเตเดเดฏเตเด เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเดฑเดฟเดจเตเดฑเต IP เดตเดฟเดฒเดพเดธเด เดเดฐเต เดธเตเดเตเดฐเดฟเดเดเต เดเดฏเดฟ เดจเตฝเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
client_args = APIClientArgs(server='192.168.47.241')
API เดธเตเตผเดตเดฑเดฟเดฒเตเดเตเดเต เดเดฃเดเตเดฑเตเดฑเตเดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเดพเดตเตเดจเตเดจ เดเดฒเตเดฒเดพ เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเดณเตเด เด เดตเดฏเตเดเต เดธเตเดฅเดฟเดฐ เดฎเตเดฒเตเดฏเดเตเดเดณเตเด เดจเตเดเตเดเดพเด:
APIClientArgs เดเตเดฒเดพเดธเดฟเดจเตเดฑเต __init__ เดฐเตเดคเดฟเดฏเตเดเต เดเตผเดเตเดฏเตเดฎเตเดจเตเดฑเตเดเตพ
class APIClientArgs:
"""
This class provides arguments for APIClient configuration.
All the arguments are configured with their default values.
"""
# port is set to None by default, but it gets replaced with 443 if not specified
# context possible values - web_api (default) or gaia_api
def __init__(self, port=None, fingerprint=None, sid=None, server="127.0.0.1", http_debug_level=0,
api_calls=None, debug_file="", proxy_host=None, proxy_port=8080,
api_version=None, unsafe=False, unsafe_auto_accept=False, context="web_api"):
self.port = port
# management server fingerprint
self.fingerprint = fingerprint
# session-id.
self.sid = sid
# management server name or IP-address
self.server = server
# debug level
self.http_debug_level = http_debug_level
# an array with all the api calls (for debug purposes)
self.api_calls = api_calls if api_calls else []
# name of debug file. If left empty, debug data will not be saved to disk.
self.debug_file = debug_file
# HTTP proxy server address (without "http://")
self.proxy_host = proxy_host
# HTTP proxy port
self.proxy_port = proxy_port
# Management server's API version
self.api_version = api_version
# Indicates that the client should not check the server's certificate
self.unsafe = unsafe
# Indicates that the client should automatically accept and save the server's certificate
self.unsafe_auto_accept = unsafe_auto_accept
# The context of using the client - defaults to web_api
self.context = context
APIClientArgs เดเตเดฒเดพเดธเดฟเดจเตเดฑเต เดธเดจเตเดฆเตผเดญเดเตเดเดณเดฟเตฝ เดเดชเดฏเตเดเดฟเดเตเดเดพเดตเตเดจเตเดจ เดเตผเดเตเดฏเตเดฎเตเดจเตเดฑเตเดเตพ เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเต เด เดกเตเดฎเดฟเดจเดฟเดธเตเดเตเดฐเตเดฑเตเดฑเตผเดฎเดพเตผเดเตเดเต เด เดตเดฌเตเดงเดเดจเตเดฏเดฎเดพเดฃเตเดจเตเดจเตเด เด เดงเดฟเด เด เดญเดฟเดชเตเดฐเดพเดฏเดเตเดเตพ เดเดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเตเดจเตเดจเตเด เดเดพเตป เดตเดฟเดถเตเดตเดธเดฟเดเตเดเตเดจเตเดจเต.
APClient เดตเดดเดฟเดฏเตเด เดธเดจเตเดฆเตผเดญ เดฎเดพเดจเตเดเตผ เดตเดดเดฟเดฏเตเด เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต
เดเตเดฒเดพเดธเต APClient เดเดคเต เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดฑเตเดฑเดตเตเด เดธเตเดเดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฏ เดฎเดพเตผเดเด เดธเดจเตเดฆเตผเดญ เดฎเดพเดจเตเดเตผ เดตเดดเดฟเดฏเดพเดฃเต. APIClient เดเตเดฒเดพเดธเดฟเดจเตเดฑเต เดเดฐเต เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดฒเตเดเตเดเต เดเตเดฎเดพเดฑเตเดฃเตเดเดคเต เดฎเตเดฎเตเดชเดคเตเดคเต เดเดเตเดเดคเตเดคเดฟเตฝ เดจเดฟเตผเดตเดเดฟเดเตเด เดเดฃเดเตเดทเตป เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต.
with APIClient(client_args) as client:
เดธเดจเตเดฆเตผเดญ เดฎเดพเดจเตเดเตผ เดธเตเดตเดฏเดฎเตเดต API เดธเตเตผเดตเดฑเดฟเดฒเตเดเตเดเต เดเดฐเต เดฒเตเดเดฟเตป เดเตเตพ เดเตเดฏเตเดฏเดฟเดฒเตเดฒ, เดเดจเตเดจเดพเตฝ เด เดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเตเดฑเดคเตเดคเตเดเดเดเตเดเตเดฎเตเดชเตเตพ เด เดคเต เดเดฐเต เดฒเตเดเตเดเดเตเดเต เดเตเตพ เดเตเดฏเตเดฏเตเด. เดเดฟเดฒ เดเดพเดฐเดฃเดเตเดเดณเดพเตฝ API เดเตเดณเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเตเดฒเดฟ เดชเตเตผเดคเตเดคเดฟเดฏเดพเดเตเดเดฟเดฏเดคเดฟเดจเต เดถเตเดทเด เดฒเตเดเตเดเดเตเดเต เดเดตเดถเตเดฏเดฎเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดธเดจเตเดฆเตผเดญ เดฎเดพเดจเตเดเตผ เดเดชเดฏเตเดเดฟเดเตเดเดพเดคเต เดจเดฟเดเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป เดคเตเดเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต:
client = APIClient(clieng_args)
เดเดฃเดเตเดทเตป เดเตเดธเตเดฑเตเดฑเต
เดเดฃเดเตเดทเตป เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเด เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดชเดพเดฒเดฟเดเตเดเตเดจเตเดจเตเดฃเตเดเตเดฏเตเดจเตเดจเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเดฑเตเดฑเดตเตเด เดเดณเตเดชเตเดช เดฎเดพเตผเดเด เดฐเตเดคเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต เดเตเดเตเดเต_เดซเดฟเดเดเตผเดชเตเดฐเดฟเดจเตเดฑเต. เดธเตเตผเดตเตผ API เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเดฟเดจเตเดฑเต เดตเดฟเดฐเดฒเดเดฏเดพเดณเดคเตเดคเดฟเดจเดพเดฏเตเดณเตเดณ sha1 เดนเดพเดทเต เดคเตเดเดฏเตเดเต เดชเดฐเดฟเดถเตเดงเดจ เดชเดฐเดพเดเดฏเดชเตเดชเตเดเตเดเดพเตฝ (เดฐเตเดคเดฟ เดคเดฟเดฐเดฟเดเต เดคเตเดฑเตเดฑเดพเดฏ), เดเดคเต เดธเดพเดงเดพเดฐเดฃเดฏเดพเดฏเดฟ เดเดฃเดเตเดทเตป เดชเตเดฐเดถเตเดจเดเตเดเตพ เดฎเตเดฒเดฎเดพเดฃเต เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเดคเต, เดเดเตเดเตพเดเตเดเต เดชเตเดฐเตเดเตเดฐเดพเดฎเดฟเดจเตเดฑเต เดเดเตเดธเดฟเดเตเดฏเตเดทเตป เดจเดฟเตผเดคเตเดคเดพเด (เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฃเดเตเดทเตป เดกเดพเดฑเตเดฑ เดถเดฐเดฟเดฏเดพเดเตเดเดพเตป เดเดชเดฏเตเดเตเดคเดพเดตเดฟเดจเต เด เดตเดธเดฐเด เดจเตฝเดเตเด):
if client.check_fingerprint() is False:
print("Could not get the server's fingerprint - Check connectivity with the server.")
exit(1)
เดญเดพเดตเดฟเดฏเดฟเตฝ เดเตเดฒเดพเดธเต เดเดจเตเดจเดคเต เดถเตเดฐเดฆเตเดงเดฟเดเตเดเตเด APClient เดเดฐเต API เดเตเดณเตเด เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเด (เดฐเตเดคเดฟเดเตพ api_call ะธ api_query, เดเดเตเดเตพ เด เดตเดฏเตเดเตเดเตเดฑเดฟเดเตเดเต เดเตเดฑเดเตเดเตเดเตเดเดฟ เดธเดเดธเดพเดฐเดฟเดเตเดเตเด) API เดธเตเตผเดตเดฑเดฟเดฒเต sha1 เดซเดฟเดเดเตผเดชเตเดฐเดฟเดจเตเดฑเต เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเต. เดเดจเตเดจเดพเตฝ, API เดธเตเตผเดตเตผ เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเดฟเดจเตเดฑเต sha1 เดซเดฟเดเดเตผเดชเตเดฐเดฟเดจเตเดฑเต เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดฎเตเดชเตเตพ, เดเดฐเต เดชเดฟเดถเดเต เดเดฃเตเดเตเดคเตเดคเดฟเดฏเดพเตฝ (เดธเตผเดเตเดเดฟเดซเดฟเดเตเดเดฑเตเดฑเต เด เดเตเดเดพเดคเดฎเดพเดฃเต เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดฎเดพเดฑเตเดฑเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต), เดฐเตเดคเดฟ เดเตเดเตเดเต_เดซเดฟเดเดเตผเดชเตเดฐเดฟเดจเตเดฑเต เดฒเตเดเตเดเตฝ เดฎเตเดทเตเดจเดฟเตฝ เด เดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดตเดฟเดตเดฐเดเตเดเตพ เดธเตเดตเดฏเดฎเตเดต เดเตเตผเดเตเดเดพเดจเตเด เดฎเดพเดฑเตเดฑเดพเดจเตเด เด เดตเดธเดฐเด เดจเตฝเดเตเด. เด เดชเดฐเดฟเดถเตเดงเดจ เดชเตเตผเดฃเตเดฃเดฎเดพเดฏเตเด เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเดเตเดเดพเตป เดเดดเดฟเดฏเตเด (เดเดจเตเดจเดพเตฝ 127.0.0.1 เดฒเตเดเตเดเต เดเดฃเดเตโเดฑเตเดฑเต เดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ, API เดธเตเตผเดตเดฑเดฟเตฝ เดคเดจเตเดจเต เดธเตโเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเต เดเดคเต เดถเตเดชเดพเตผเดถ เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเต), APIClientArgs เดเตผเดเตเดฏเตเดฎเตเดจเตเดฑเต เดเดชเดฏเตเดเดฟเดเตเดเต - เดธเตเดฐเดเตเดทเดฟเดคเดฎเดฒเตเดฒเดพเดคเตเดค_เดธเตเดตเดฏเด_เด เดเดเตเดเดฐเดฟเดเตเดเตเด ("เดเดฃเดเตเดทเตป เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดจเดฟเตผเดตเดเดฟเดเตเดเตเดจเตเดจเต" เดเดจเตเดจเดคเดฟเตฝ เดจเตเดฐเดคเตเดคเต APIClientArgs-เดจเต เดเตเดฑเดฟเดเตเดเต เดเตเดเตเดคเตฝ เดเดพเดฃเตเด).
client_args = APIClientArgs(unsafe_auto_accept=True)
API เดธเตเตผเดตเดฑเดฟเดฒเตเดเตเดเต เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเตเด
ะฃ APClient API เดธเตเตผเดตเดฑเดฟเดฒเตเดเตเดเต เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต 3 เดฐเตเดคเดฟเดเตพ เดเดฃเตเดเต, เด เดต เดเดฐเตเดจเตเดจเตเด เด เตผเดคเตเดฅเด เดฎเดจเดธเตเดธเดฟเดฒเดพเดเตเดเตเดจเตเดจเต เดธเดฟเดกเต(เดธเตเดทเตป-เดเดกเดฟ), เดเดคเต เดนเตเดกเดฑเดฟเดฒเต เดเดฐเต เดคเตเดเตผเดจเตเดจเตเดณเตเดณ เดเดชเดฟเด เดเตเดณเดฟเดฒเตเด เดธเตเดตเดฏเดฎเตเดต เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต (เด เดชเดฐเดพเดฎเตเดฑเตเดฑเดฑเดฟเดจเตเดฑเต เดคเดฒเดเตเดเตเดเตเดเดฟเดฒเต เดชเตเดฐเต X-chkp-sid), เด เดคเดฟเดจเดพเตฝ เด เดชเดฐเดพเดฎเตเดฑเตเดฑเตผ เดเตเดเตเดคเตฝ เดชเตเดฐเตเดธเดธเตเดธเต เดเตเดฏเตเดฏเตเดฃเตเด เดเดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ.
เดฒเตเดเดฟเตป เดฐเตเดคเดฟ
เดฒเตเดเดฟเดจเตเด เดชเดพเดธเตโเดตเตเดกเตเด เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดเดชเตเดทเตป (เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เดเดชเดฏเตเดเตเดคเตเดจเดพเดฎเดตเตเด เด เดกเตเดฎเดฟเตป เดชเดพเดธเตโเดตเตเดกเตเด 1q2w3e เดชเตเดธเดฟเดทเดฃเตฝ เดเตผเดเตเดฏเตเดฎเตเดจเตเดฑเตเดเดณเดพเดฏเดฟ เดเตเดฎเดพเดฑเตเดจเตเดจเต):
login = client.login('admin', '1q2w3e')
เดฒเตเดเดฟเตป เดฐเตเดคเดฟเดฏเดฟเตฝ เด เดงเดฟเด เดเดชเตโเดทเดฃเตฝ เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเดณเตเด เดฒเดญเตเดฏเดฎเดพเดฃเต; เด เดตเดฏเตเดเต เดชเตเดฐเตเดเดณเตเด เดกเดฟเดซเตเตพเดเตเดเต เดฎเตเดฒเตเดฏเดเตเดเดณเตเด เดเดตเดฟเดเตเดฏเตเดฃเตเดเต:
continue_last_session=False, domain=None, read_only=False, payload=None
Api_key เดฐเตเดคเดฟ เดเดชเดฏเตเดเดฟเดเตเดเต_เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเตเด
เดเดฐเต เดเดชเดฟเด เดเต เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดเดชเตเดทเตป (เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดชเดคเดฟเดชเตเดชเต R80.40/เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต API v1.6 เดฎเตเดคเตฝ เดชเดฟเดจเตเดคเตเดฃเดฏเตเดเตเดเตเดจเตเดจเต, "3TsbPJ8ZKjaJGvFyoFqHFA==" API เดเต เด เดเดเตเดเดพเดฐ เดฐเตเดคเดฟเดฏเตเดณเตเดณ เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเดฑเดฟเดฒเต เดเดชเดฏเตเดเตเดคเดพเดเตเดเดณเดฟเตฝ เดเดฐเดพเดณเตเดเต API เดเต เดฎเตเดฒเตเดฏเดฎเดพเดฃเดฟเดคเต:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
เดฐเตเดคเดฟเดฏเดฟเดฒเดพเดฃเต api_key เดเดชเดฏเตเดเดฟเดเตเดเต_เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเตเด เดฐเตเดคเดฟเดฏเดฟเดฒเตเดณเตเดณ เด เดคเต เดเดชเตเดทเดฃเตฝ เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดฒเดญเตเดฏเดฎเดพเดฃเต เดฒเตเดพเดเดฟเตป.
เดฒเตเดเดฟเตป_เดเดธเต_เดฑเตเดเตเดเต เดฐเตเดคเดฟ
API เดธเตเตผเดตเตผ เดเดณเตเดณ เดเดฐเต เดฒเตเดเตเดเตฝ เดฎเตเดทเตเดจเดฟเดฒเตเดเตเดเต เดฒเตเดเดฟเตป เดเตเดฏเตเดฏเดพเดจเตเดณเตเดณ เดเดชเตเดทเตป:
login = client.login_as_root()
เด เดฐเตเดคเดฟเดเตเดเต เดฐเดฃเตเดเต เดเดชเตเดทเดฃเตฝ เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดฎเดพเดคเตเดฐเดฎเต เดฒเดญเตเดฏเดฎเดพเดเต:
domain=None, payload=None
เดเดเตเดตเดฟเตฝ API เดธเตเดตเดฏเด เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต
เดฐเตเดคเดฟเดเดณเดฟเดฒเตเดเต API เดเตเดณเตเดเตพ เดเตเดฏเตเดฏเดพเตป เดเดเตเดเตพเดเตเดเต เดฐเดฃเตเดเต เดเดชเตเดทเดจเตเดเดณเตเดฃเตเดเต api_call ะธ api_query. เด เดต เดคเดฎเตเดฎเดฟเดฒเตเดณเตเดณ เดตเตเดฏเดคเตเดฏเดพเดธเด เดเดจเตเดคเดพเดฃเตเดจเตเดจเต เดจเดฎเตเดเตเดเต เดจเตเดเตเดเดพเด.
api_call
เดเดคเต เดเตเดณเตเดเตพเดเตเดเตเด เด เดฐเตเดคเดฟ เดฌเดพเดงเดเดฎเดพเดฃเต. เดเดตเดถเตเดฏเดฎเตเดเตเดเดฟเตฝ เดฑเดฟเดเตเดตเดธเตเดฑเตเดฑเต เดฌเตเดกเดฟเดฏเดฟเตฝ api เดเตเดณเดฟเดจเตเด เดชเตเดฒเตเดกเดฟเดจเตเดฎเตเดณเตเดณ เด เดตเดธเดพเดจ เดญเดพเดเด เดเดเตเดเตพ เดชเดพเดธเดพเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดชเตเดฒเตเดกเต เดถเตเดจเตเดฏเดฎเดพเดฃเตเดเตเดเดฟเตฝ, เด เดคเต เดเตเดฎเดพเดฑเดพเตป เดเดดเดฟเดฏเดฟเดฒเตเดฒ:
api_versions = client.api_call('show-api-versions')
เดเดเตเดเดฟเดจเต เดคเดพเดดเตเดฏเตเดณเตเดณ เด เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเดเต เดเดเตเดเตเดชเตเดเตเดเต:
In [23]: api_versions
Out[23]:
APIResponse({
"data": {
"current-version": "1.6",
"supported-versions": [
"1",
"1.1",
"1.2",
"1.3",
"1.4",
"1.5",
"1.6"
]
},
"res_obj": {
"data": {
"current-version": "1.6",
"supported-versions": [
"1",
"1.1",
"1.2",
"1.3",
"1.4",
"1.5",
"1.6"
]
},
"status_code": 200
},
"status_code": 200,
"success": true
})
show_host = client.api_call('show-host', {'name' : 'h_8.8.8.8'})
เดเดเตเดเดฟเดจเต เดคเดพเดดเตเดฏเตเดณเตเดณ เด เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเดเต เดเดเตเดเตเดชเตเดเตเดเต:
In [25]: show_host
Out[25]:
APIResponse({
"data": {
"color": "black",
"comments": "",
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"groups": [],
"icon": "Objects/host",
"interfaces": [],
"ipv4-address": "8.8.8.8",
"meta-info": {
"creation-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"creator": "admin",
"last-modifier": "admin",
"last-modify-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"lock": "unlocked",
"validation-state": "ok"
},
"name": "h_8.8.8.8",
"nat-settings": {
"auto-rule": false
},
"read-only": false,
"tags": [],
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
},
"res_obj": {
"data": {
"color": "black",
"comments": "",
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"groups": [],
"icon": "Objects/host",
"interfaces": [],
"ipv4-address": "8.8.8.8",
"meta-info": {
"creation-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"creator": "admin",
"last-modifier": "admin",
"last-modify-time": {
"iso-8601": "2020-05-01T21:49+0300",
"posix": 1588358973517
},
"lock": "unlocked",
"validation-state": "ok"
},
"name": "h_8.8.8.8",
"nat-settings": {
"auto-rule": false
},
"read-only": false,
"tags": [],
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
},
"status_code": 200
},
"status_code": 200,
"success": true
})
api_query
เดเดเตเดเตโเดชเตเดเตเดเต เดเดซเตโเดธเตเดฑเตเดฑเต เดเตพเดชเตเดชเตเดเตเดจเตเดจ เดเตเดณเตเดเตพเดเตเดเต เดฎเดพเดคเตเดฐเดฎเต เด เดฐเตเดคเดฟ เดฌเดพเดงเดเดฎเดพเดเต เดเดจเตเดจเต เดเดพเตป เดเดเตป เดคเดจเตเดจเต เดฑเดฟเดธเตผเดตเตเดทเตป เดเตเดฏเตเดฏเดเตเดเต. เด เดคเตเดคเดฐเด เดเดฐเต เด เดจเตเดฎเดพเดจเด เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเดคเต เด เดคเดฟเตฝ เดตเดฒเดฟเดฏ เด เดณเดตเดฟเดฒเตเดณเตเดณ เดตเดฟเดตเดฐเดเตเดเตพ เด เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดฎเตเดชเตเดดเต เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เด เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดฎเตเดชเตเดดเต เดเดฃเต. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเดฑเดฟเตฝ เดธเตเดทเตเดเดฟเดเตเด เดเดฒเตเดฒเดพ เดนเตเดธเตเดฑเตเดฑเต เดเดฌเตเดเดเตเดฑเตเดฑเตเดเดณเตเดเตเดฏเตเด เดเดฐเต เดฒเดฟเดธเตเดฑเตเดฑเดฟเดจเดพเดฏเตเดณเตเดณ เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเดพเดฃเดฟเดคเต. เด เดคเตเดคเดฐเด เด เดญเตเดฏเตผเดคเตเดฅเดจเดเตพเดเตเดเดพเดฏเดฟ, API เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ 50 เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเตเดเต เดเดฐเต เดฒเดฟเดธเตเดฑเตเดฑเต เดจเตฝเดเตเดจเตเดจเต (เดชเตเดฐเดคเดฟเดเดฐเดฃเดคเตเดคเดฟเตฝ เดจเดฟเดเตเดเตพเดเตเดเต เดชเดฐเดฟเดงเดฟ 500 เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเดพเดฏเดฟ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเดเตเดเดพเด). API เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเดฟเดฒเต เดเดซเตโเดธเตเดฑเตเดฑเต เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเตผ เดฎเดพเดฑเตเดฑเดฟเดเตเดเตเดฃเตเดเต, เดตเดฟเดตเดฐเดเตเดเตพ เดชเดฒเดคเดตเดฃ เดตเดฒเดฟเดเตเดเดฟเดเดพเดคเดฟเดฐเดฟเดเตเดเดพเตป, เดเดคเต เดธเตเดตเดฏเดฎเตเดต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดเดฐเต api_query เดฐเตเดคเดฟเดฏเตเดฃเตเดเต. เด เดฐเตเดคเดฟ เดเดตเดถเตเดฏเดฎเตเดณเตเดณ เดเตเดณเตเดเดณเตเดเต เดเดฆเดพเดนเดฐเดฃเดเตเดเตพ: เดทเต-เดธเตเดทเดจเตเดเตพ, เดทเต-เดนเตเดธเตเดฑเตเดฑเตเดเตพ, เดทเต-เดจเตเดฑเตเดฑเตโเดตเตผเดเตเดเตเดเตพ, เดทเต-เดตเตเตฝเดกเตเดเดพเตผเดกเตเดเตพ, เดทเต-เดเตเดฐเตเดชเตเดชเตเดเตพ, เดทเต-เดตเดฟเดฒเดพเดธเด-เดฑเตเดเตเดเตเดเตพ, เดทเต-เดฒเดณเดฟเดคเดฎเดพเดฏ-เดเตเดฑเตเดฑเตโเดตเตเดเตพ, เดทเต-เดฒเดณเดฟเดคเดฎเดพเดฏ-เดเตเดฒเดธเตเดฑเตเดฑเดฑเตเดเตพ, เดทเต-เดเดเตเดธเดธเต-เดฑเตเดณเตเดเตพ, เดทเต-เดเตเดฐเดธเตเดฑเตเดฑเดกเต-เดเตเดฒเดฏเดจเตเดฑเตเดธเต, เดทเต-เดชเดพเดเตเดเตเดเตเดเตพ. เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ, เด API เดเตเดณเตเดเดณเตเดเต เดชเตเดฐเดฟเตฝ เดเดเตเดเตพ เดฌเดนเตเดตเดเดจ เดชเดฆเดเตเดเตพ เดเดพเดฃเตเดจเตเดจเต, เด เดคเดฟเดจเดพเตฝ เด เดเตเดณเตเดเตพ เดเตเดเดพเดฐเตเดฏเด เดเตเดฏเตเดฏเดพเตป เดเดณเตเดชเตเดชเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเตเด api_query
show_hosts = client.api_query('show-hosts')
เดเดเตเดเดฟเดจเต เดคเดพเดดเตเดฏเตเดณเตเดณ เด เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเดเต เดเดเตเดเตเดชเตเดเตเดเต:
In [21]: show_hosts
Out[21]:
APIResponse({
"data": [
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "192.168.47.1",
"name": "h_192.168.47.1",
"type": "host",
"uid": "5d7d7086-d70b-4995-971a-0583b15a2bfc"
},
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "8.8.8.8",
"name": "h_8.8.8.8",
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
}
],
"res_obj": {
"data": {
"from": 1,
"objects": [
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "192.168.47.1",
"name": "h_192.168.47.1",
"type": "host",
"uid": "5d7d7086-d70b-4995-971a-0583b15a2bfc"
},
{
"domain": {
"domain-type": "domain",
"name": "SMC User",
"uid": "41e821a0-3720-11e3-aa6e-0800200c9fde"
},
"ipv4-address": "8.8.8.8",
"name": "h_8.8.8.8",
"type": "host",
"uid": "c210af07-1939-49d3-a351-953a9c471d9e"
}
],
"to": 2,
"total": 2
},
"status_code": 200
},
"status_code": 200,
"success": true
})
API เดเตเดณเตเดเดณเตเดเต เดซเดฒเดเตเดเตพ เดชเตเดฐเตเดธเดธเตเดธเต เดเตเดฏเตเดฏเตเดจเตเดจเต
เดเดคเดฟเดจเตเดถเตเดทเด เดจเดฟเดเตเดเตพเดเตเดเต เดเตเดฒเดพเดธเดฟเดจเตเดฑเต เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเดณเตเด เดฐเตเดคเดฟเดเดณเตเด เดเดชเดฏเตเดเดฟเดเตเดเดพเด APIR เดชเตเดฐเดคเดฟเดเดฐเดฃเด(เดธเดจเตเดฆเตผเดญ เดฎเดพเดจเตเดเดฑเดฟเดจเดเดคเตเดคเตเด เดชเตเดฑเดคเตเดคเตเด). เดเตเดฒเดพเดธเตเดธเดฟเตฝ APIR เดชเตเดฐเดคเดฟเดเดฐเดฃเด 4 เดฐเตเดคเดฟเดเดณเตเด 5 เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเดณเตเด เดฎเตเตปเดเตเดเตเดเดฟ เดจเดฟเดถเตเดเดฏเดฟเดเตเดเดฟเดเตเดเตเดฃเตเดเต; เดเดเตเดเตพ เดเดฑเตเดฑเดตเตเด เดชเตเดฐเดงเดพเดจเดชเตเดชเตเดเตเดเดตเดฏเดฟเตฝ เดเตเดเตเดคเตฝ เดตเดฟเดถเดฆเดฎเดพเดฏเดฟ เดตเดธเดฟเดเตเดเตเด.
เดตเดฟเดเดฏเด
เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, API เดเตเตพ เดตเดฟเดเดฏเดเดฐเดฎเดพเดฃเตเดจเตเดจเตเด เดเดฐเต เดซเดฒเด เดจเตฝเดเดฟเดฏเตเดจเตเดจเตเด เดเดฑเดชเตเดชเดพเดเตเดเตเดจเตเดจเดคเต เดจเดฒเตเดฒ เดเดถเดฏเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเตเด. เดเดคเดฟเดจเตเดฐเต เดฐเตเดคเดฟเดฏเตเดฃเตเดเต เดตเดฟเดเดฏเด:
In [49]: api_versions.success
Out[49]: True
API เดเตเตพ เดตเดฟเดเดฏเดเดฐเดฎเดพเดฃเตเดเตเดเดฟเตฝ True เดจเตฝเดเตเดจเตเดจเต (เดชเตเดฐเดคเดฟเดเดฐเดฃ เดเตเดกเต - 200), เดตเดฟเดเดฏเดฟเดเตเดเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ เดคเตเดฑเตเดฑเต (เดฎเดฑเตเดฑเตเดคเตเดเตเดเดฟเดฒเตเด เดชเตเดฐเดคเดฟเดเดฐเดฃ เดเตเดกเต). เดชเตเดฐเดคเดฟเดเดฐเดฃ เดเตเดกเดฟเดจเต เดเดถเตเดฐเดฏเดฟเดเตเดเต เดตเตเดฏเดคเตเดฏเดธเตโเดค เดตเดฟเดตเดฐเดเตเดเตพ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเดฐเต API เดเตเดณเดฟเดจเต เดถเตเดทเด เดเดเดจเดเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเต เดธเตเดเดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต.
if api_ver.success:
print(api_versions.data)
else:
print(api_versions.err_message)
เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดธเต เดเตเดกเต
เดเดฐเต API เดเตเตพ เดเตเดฏเตเดคเดคเดฟเดจเต เดถเตเดทเด เดชเตเดฐเดคเดฟเดเดฐเดฃ เดเตเดกเต เดจเตฝเดเตเดจเตเดจเต.
In [62]: api_versions.status_code
Out[62]: 400
เดธเดพเดงเตเดฏเดฎเดพเดฏ เดชเตเดฐเดคเดฟเดเดฐเดฃ เดเตเดกเตเดเตพ: 200,400,401,403,404,409,500,501.
set_success_status
เด เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดตเดฟเดเดฏ เดจเดฟเดฒเดฏเตเดเต เดฎเตเดฒเตเดฏเด เดฎเดพเดฑเตเดฑเตเดฃเตเดเดคเต เดเดตเดถเตเดฏเดฎเดพเดฏเดฟ เดตเดจเตเดจเตเดเตเดเดพเด. เดธเดพเดเตเดเตเดคเดฟเดเดฎเดพเดฏเดฟ, เดจเดฟเดเตเดเตพเดเตเดเต เด เดตเดฟเดเต เดเดจเตเดคเตเด เดธเตเดฅเดพเดชเดฟเดเตเดเดพเด, เดเดฐเต เดธเดพเดงเดพเดฐเดฃ เดธเตเดเตเดฐเดฟเดเดเต เดชเตเดฒเตเด. เดเดจเตเดจเดพเตฝ เดเดฐเต เดฏเดฅเดพเตผเดคเตเดฅ เดเดฆเดพเดนเดฐเดฃเด เดเดฟเดฒ เด เดจเตเดฌเดจเตเดง เดตเตเดฏเดตเดธเตเดฅเดเดณเดฟเตฝ เด เดชเดฐเดพเดฎเตเดฑเตเดฑเตผ เดคเตเดฑเตเดฑเดฟเดฒเตเดเตเดเต เดชเตเดจเดเดธเดเตเดเดฎเดพเดเตเดเตเดจเตเดจเดคเดพเดฃเต. เดคเดพเดดเต, เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเดฑเดฟเตฝ เดเดพเดธเตเดเตเดเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดฎเตเดชเตเตพ เดเดฆเดพเดนเดฐเดฃเด เดถเตเดฐเดฆเตเดงเดฟเดเตเดเตเด, เดเดจเตเดจเดพเตฝ เด เด เดญเตเดฏเตผเดคเตเดฅเดจ เดชเดฐเดพเดเดฏเดชเตเดชเตเดเตเดเดคเดพเดฏเดฟ เดเดเตเดเตพ เดชเดฐเดฟเดเดฃเดฟเดเตเดเตเด (เดเดเตเดเตพ เดตเดฟเดเดฏ เดตเตเดฐเดฟเดฏเดฌเดฟเตพ เดธเดเตเดเดฎเดพเดเตเดเตเด เดคเตเดฑเตเดฑเดพเดฏ, API เดเตเตพ เดตเดฟเดเดฏเดฟเดเตเดเตเดเดฏเตเด เดเตเดกเต 200 เดจเตฝเดเตเดเดฏเตเด เดเตเดฏเตโเดคเดฟเดเตเดเตเด).
for task in task_result.data["tasks"]:
if task["status"] == "failed" or task["status"] == "partially succeeded":
task_result.set_success_status(False)
break
เดชเตเดฐเดคเดฟเดเดฐเดฃเด()
เดชเตเดฐเดคเดฟเดเดฐเดฃ เดเตเดกเต (status_code), เดชเตเดฐเดคเดฟเดเดฐเดฃ เดฌเตเดกเดฟ (เดถเดฐเตเดฐเด) เดเดจเตเดจเดฟเดต เดเดชเดฏเตเดเดฟเดเตเดเต เดจเดฟเดเดฃเตเดเต เดเดพเดฃเตเดจเตเดจเดคเดฟเดจเต เดชเตเดฐเดคเดฟเดเดฐเดฃ เดฐเตเดคเดฟ เดจเดฟเดเตเดเดณเต เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต.
In [94]: api_versions.response()
Out[94]:
{'status_code': 200,
'data': {'current-version': '1.6',
'supported-versions': ['1', '1.1', '1.2', '1.3', '1.4', '1.5', '1.6']}}
เดกเดพเดฑเตเดฑ
เด เดจเดพเดตเดถเตเดฏ เดตเดฟเดตเดฐเดเตเดเดณเดฟเดฒเตเดฒเดพเดคเต เดชเตเดฐเดคเดฟเดเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต (เดถเดฐเตเดฐเด) เดฌเตเดกเดฟ เดฎเดพเดคเตเดฐเด เดเดพเดฃเดพเตป เดจเดฟเดเตเดเดณเต เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต.
In [93]: api_versions.data
Out[93]:
{'current-version': '1.6',
'supported-versions': ['1', '1.1', '1.2', '1.3', '1.4', '1.5', '1.6']}
เดชเดฟเดถเดเต เดธเดจเตเดฆเตเดถเด
API เด เดญเตเดฏเตผเดคเตเดฅเดจ เดชเตเดฐเตเดธเดธเตเดธเต เดเตเดฏเตเดฏเตเดฎเตเดชเตเตพ เดเดฐเต เดชเดฟเดถเดเต เดธเดเดญเดตเดฟเดเตเดเตเดฎเตเดชเตเตพ เดฎเดพเดคเตเดฐเดฎเต เด เดตเดฟเดตเดฐเดเตเดเตพ เดฒเดญเตเดฏเดฎเดพเดเต (เดชเตเดฐเดคเดฟเดเดฐเดฃ เดเตเดกเต เด เดฒเตเดฒ 200). เดเดฆเดพเดนเดฐเดฃ เดเดเตเดเตเดชเตเดเตเดเต
In [107]: api_versions.error_message
Out[107]: 'code: generic_err_invalid_parameter_namenmessage: Unrecognized parameter [1]n'
เดเดชเดฏเตเดเดชเตเดฐเดฆเดฎเดพเดฏ เดเดฆเดพเดนเดฐเดฃเดเตเดเตพ
เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต API 1.6-เตฝ เดเตเตผเดคเตเดค API เดเตเดณเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดเดฆเดพเดนเดฐเดฃเดเตเดเดณเดพเดฃเต เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจเดต.
เดเดฆเตเดฏเด, เดเตเดณเตเดเตพ เดเดเตเดเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเตเดตเตเดจเตเดจเต เดจเตเดเตเดเดพเด เดเดกเต-เดนเตเดธเตเดฑเตเดฑเต ะธ เดตเดฟเดฒเดพเดธเด-เดชเดฐเดฟเดงเดฟ เดเตเตผเดเตเดเตเด. 192.168.0.0/24 เดเดจเตเดจ เดธเดฌเตโเดจเตเดฑเตเดฑเดฟเดจเตเดฑเต เดเดฒเตเดฒเดพ IP เดตเดฟเดฒเดพเดธเดเตเดเดณเตเด เดเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเตเดจเตเดจเต เดชเดฑเดฏเดพเด, เด เดคเดฟเตฝ เด เดตเดธเดพเดจเดคเตเดคเต เดเดเตโเดฑเตเดฑเดฑเตเดฑเต 5 เดเดฃเต, เดนเตเดธเตเดฑเตเดฑเต เดคเดฐเดคเตเดคเดฟเดจเตเดฑเต เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเดพเดฏเดฟ, เดเตเดเดพเดคเต เดฎเดฑเตเดฑเต เดเดฒเตเดฒเดพ IP เดตเดฟเดฒเดพเดธเดเตเดเดณเตเด เดตเดฟเดฒเดพเดธ เดถเตเดฐเตเดฃเดฟ เดคเดฐเดคเตเดคเดฟเดจเตเดฑเต เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเดพเดฏเดฟ เดเดดเตเดคเตเด. เด เดธเดพเดนเดเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดธเดฌเตเดจเตเดฑเตเดฑเต เดตเดฟเดฒเดพเดธเดตเตเด เดชเตเดฐเดเตเดทเตเดชเดฃ เดตเดฟเดฒเดพเดธเดตเตเด เดเดดเดฟเดตเดพเดเตเดเตเด.
เด เดคเดฟเดจเดพเตฝ, เด เดชเตเดฐเดถเตเดจเด เดชเดฐเดฟเดนเดฐเดฟเดเตเดเตเดจเตเดจ เดเดฐเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเตเดตเดเตเดฏเตเดฃเตเดเต, เดเตเดเดพเดคเต เดนเตเดธเตเดฑเตเดฑเต เดคเดฐเดคเตเดคเดฟเดจเตเดฑเต 50 เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเตเด เดตเดฟเดฒเดพเดธ เดถเตเดฐเตเดฃเดฟเดฏเตเดเต 51 เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเตเด เดธเตเดทเตโเดเดฟเดเตเดเตเดจเตเดจเต. เดชเตเดฐเดถเตเดจเด เดชเดฐเดฟเดนเดฐเดฟเดเตเดเดพเตป, 101 API เดเตเดณเตเดเตพ เดเดตเดถเตเดฏเดฎเดพเดฃเต (เด เดตเดธเดพเดจเด เดชเตเดฐเดธเดฟเดฆเตเดงเตเดเดฐเดฟเดเตเดเตเดจเตเดจ เดเตเดณเดฟเดจเต เดเดฃเดเตเดเดพเดเตเดเตเดจเตเดจเดฟเดฒเตเดฒ). เดเตเดเดพเดคเต, เดเตเดเดเดฑเตเดฑเต เดฎเตเดกเตเดฏเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเต, เดฎเดพเดฑเตเดฑเดเตเดเตพ เดชเตเดฐเดธเดฟเดฆเตเดงเตเดเดฐเดฟเดเตเดเตเดจเตเดจเดคเตเดตเดฐเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเดพเตป เดเดเตเดเตเดเตเดจเตเดจ เดธเดฎเดฏเด เดเดเตเดเตพ เดเดฃเดเตเดเดพเดเตเดเตเดจเตเดจเต.
เดเดกเต-เดนเตเดธเตเดฑเตเดฑเตเด เดเดกเต-เด เดกเตเดฐเดธเต-เดฑเตเดเตเดเตเด เดเดชเดฏเตเดเดฟเดเตเดเตเดณเตเดณ เดธเตโเดเตเดฐเดฟเดชเตเดฑเตเดฑเต
import timeit
from cpapi import APIClient, APIClientArgs
start = timeit.default_timer()
first_ip = 1
last_ip = 4
client_args = APIClientArgs(server="192.168.47.240")
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
for ip in range(5,255,5):
add_host = client.api_call("add-host", {"name" : f"h_192.168.0.{ip}", "ip-address": f'192.168.0.{ip}'})
while last_ip < 255:
add_range = client.api_call("add-address-range", {"name": f"r_192.168.0.{first_ip}-{last_ip}", "ip-address-first": f"192.168.0.{first_ip}", "ip-address-last": f"192.168.0.{last_ip}"})
first_ip+=5
last_ip+=5
stop = timeit.default_timer()
publish = client.api_call("publish")
print(f'Time to execute batch request: {stop - start} seconds')
เดเดจเตเดฑเต เดฒเดพเดฌเต เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเตฝ, เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเดฑเดฟเดฒเต เดฒเตเดกเต เด เดจเตเดธเดฐเดฟเดเตเดเต เด เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดเตเดธเดฟเดเตเดฏเตเดเตเดเต เดเตเดฏเตเดฏเดพเตป 30 เดฎเตเดคเตฝ 50 เดธเตเดเตเดเตปเดกเต เดตเดฐเต เดเดเตเดเตเดเตเด.
เดเดฐเต API เดเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เด เดคเต เดชเตเดฐเดถเตเดจเด เดเดเตเดเดจเต เดชเดฐเดฟเดนเดฐเดฟเดเตเดเดพเดฎเตเดจเตเดจเต เดจเตเดเตเดเดพเด add-objects-batch, API เดชเดคเดฟเดชเตเดชเต 1.6-เตฝ เดเดคเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ เดเตเตผเดคเตเดคเต. เดเดฐเต API เด เดญเตเดฏเตผเดคเตเดฅเดจเดฏเดฟเตฝ เดเดฐเตเดธเดฎเดฏเด เดจเดฟเดฐเดตเดงเดฟ เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเตพ เดธเตเดทเตโเดเดฟเดเตเดเดพเตป เด เดเตเตพ เดจเดฟเดเตเดเดณเต เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดเดต เดตเตเดฏเดคเตเดฏเดธเตเดค เดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเดพเดเดพเด (เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดนเตเดธเตเดฑเตเดฑเตเดเตพ, เดธเดฌเตโเดจเตเดฑเตเดฑเตเดเตพ, เดตเดฟเดฒเดพเดธ เดถเตเดฐเตเดฃเดฟเดเตพ). เด เดเตเดเดจเต, เดเดเตเดเดณเตเดเต เดเตเดฎเดคเดฒ เดเดฐเต API เดเตเดณเดฟเดจเตเดฑเต เดเดเตเดเดเตเดเตเดเดฟเดจเตเดณเตเดณเดฟเตฝ เดชเดฐเดฟเดนเดฐเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด.
add-objects-batch เดเดชเดฏเตเดเดฟเดเตเดเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต
import timeit
from cpapi import APIClient, APIClientArgs
start = timeit.default_timer()
client_args = APIClientArgs(server="192.168.47.240")
objects_list_ip = []
objects_list_range = []
for ip in range(5,255,5):
data = {"name": f'h_192.168.0.{ip}', "ip-address": f'192.168.0.{ip}'}
objects_list_ip.append(data)
first_ip = 1
last_ip = 4
while last_ip < 255:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}", "ip-address-first": f"192.168.0.{first_ip}", "ip-address-last": f"192.168.0.{last_ip}"}
objects_list_range.append(data)
first_ip+=5
last_ip+=5
data_for_batch = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip
}, {
"type" : "address-range",
"list" : objects_list_range
}]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
add_objects_batch = client.api_call("add-objects-batch", data_for_batch)
stop = timeit.default_timer()
publish = client.api_call("publish")
print(f'Time to execute batch request: {stop - start} seconds')
เดเดจเตเดฑเต เดฒเดพเดฌเต เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเตฝ เด เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเดฑเดฟเดฒเต เดฒเตเดกเดฟเดจเต เดเดถเตเดฐเดฏเดฟเดเตเดเต 3 เดฎเตเดคเตฝ 7 เดธเตเดเตเดเตปเดกเต เดตเดฐเต เดเดเตเดเตเดเตเด. เด เดคเดพเดฏเดคเต, เดถเดฐเดพเดถเดฐเดฟ, 101 API เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเดฟเตฝ, เดเดฐเต เดฌเดพเดเตเดเต เดเตเดชเตเดชเต เดเตเตพ 10 เดฎเดเดเตเดเต เดตเตเดเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต. เดเดฌเตโเดเดเตเดฑเตเดฑเตเดเดณเตเดเต เดเดฐเต เดตเดฒเดฟเดฏ เดธเดเดเตเดฏเดฏเดฟเตฝ, เดตเตเดฏเดคเตเดฏเดพเดธเด เดเตเดเตเดคเตฝ เดถเตเดฐเดฆเตเดงเตเดฏเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเตเด.
เดเดชเตเดชเตเตพ เดเดเตเดเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเดฎเตเดจเตเดจเต เดจเตเดเตเดเดพเด set-objects-batch. เด API เดเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเต, เดจเดฎเตเดเตเดเต เดเดคเต เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเด เดฌเตพเดเตเดเต เดฎเดพเดฑเตเดฑเดพเดจเดพเดเตเด. เดฎเตเดฎเตเดชเดคเตเดคเต เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดตเดฟเดฒเดพเดธเดเตเดเดณเตเดเต เดเดฆเตเดฏ เดชเดเตเดคเดฟ (.124 เดตเดฐเต เดนเตเดธเตเดฑเตเดฑเตเดเตพ, เดเตเดเดพเดคเต เดถเตเดฐเตเดฃเดฟเดเดณเตเด) เดเดณเตผ เดธเดฟเดฏเดจเตเดจเดฏเดฟเดฒเตเดเตเดเต เดธเดเตเดเตเดเดฐเดฟเดเตเดเดพเด, เดเตเดเดพเดคเต เดตเดฟเดฒเดพเดธเดเตเดเดณเตเดเต เดฐเดฃเตเดเดพเด เดชเดเตเดคเดฟเดฏเดฟเดฒเตเดเตเดเต เดเดณเตผ เดเดพเดเตเดเดฟ เดจเตฝเดเดพเด.
เดฎเตเดฎเตเดชเดคเตเดคเต เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดธเตเดทเตเดเดฟเดเตเด เดตเดธเตเดคเตเดเตเดเดณเตเดเต เดจเดฟเดฑเด เดฎเดพเดฑเตเดฑเตเดจเตเดจเต
from cpapi import APIClient, APIClientArgs
client_args = APIClientArgs(server="192.168.47.240")
objects_list_ip_first = []
objects_list_range_first = []
objects_list_ip_second = []
objects_list_range_second = []
for ip in range(5,125,5):
data = {"name": f'h_192.168.0.{ip}', "color": "sienna"}
objects_list_ip_first.append(data)
for ip in range(125,255,5):
data = {"name": f'h_192.168.0.{ip}', "color": "khaki"}
objects_list_ip_second.append(data)
first_ip = 1
last_ip = 4
while last_ip < 125:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}", "color": "sienna"}
objects_list_range_first.append(data)
first_ip+=5
last_ip+=5
while last_ip < 255:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}", "color": "khaki"}
objects_list_range_second.append(data)
first_ip+=5
last_ip+=5
data_for_batch_first = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip_first
}, {
"type" : "address-range",
"list" : objects_list_range_first
}]
}
data_for_batch_second = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip_second
}, {
"type" : "address-range",
"list" : objects_list_range_second
}]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
set_objects_batch_first = client.api_call("set-objects-batch", data_for_batch_first)
set_objects_batch_second = client.api_call("set-objects-batch", data_for_batch_second)
publish = client.api_call("publish")
เดเดชเดฏเตเดเดฟเดเตเดเต เดจเดฟเดเตเดเตพเดเตเดเต เดเดฐเต API เดเตเดณเดฟเตฝ เดเดจเตเดจเดฟเดฒเดงเดฟเดเด เดเดฌเตโเดเดเตโเดฑเตเดฑเตเดเตพ เดเดฒเตเดฒเดพเดคเดพเดเตเดเดพเด delete-objects-batch. เดฎเตเดฎเตเดชเต เดธเตเดทเตเดเดฟเดเตเด เดเดฒเตเดฒเดพ เดนเตเดธเตเดฑเตเดฑเตเดเดณเตเดฏเตเด เดเดฒเตเดฒเดพเดคเดพเดเตเดเตเดจเตเดจ เดเดฐเต เดเตเดกเต เดเดฆเดพเดนเดฐเดฃเด เดจเตเดเตเดเดพเด add-objects-batch.
เดกเดฟเดฒเตเดฑเตเดฑเต-เดเดฌเตเดเดเตเดฑเตเดฑเตเดธเต-เดฌเดพเดเตเดเต เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฌเตเดเดเตเดฑเตเดฑเตเดเตพ เดเดฒเตเดฒเดพเดคเดพเดเตเดเตเดจเตเดจเต
from cpapi import APIClient, APIClientArgs
client_args = APIClientArgs(server="192.168.47.240")
objects_list_ip = []
objects_list_range = []
for ip in range(5,255,5):
data = {"name": f'h_192.168.0.{ip}'}
objects_list_ip.append(data)
first_ip = 1
last_ip = 4
while last_ip < 255:
data = {"name": f"r_192.168.0.{first_ip}-{last_ip}"}
objects_list_range.append(data)
first_ip+=5
last_ip+=5
data_for_batch = {
"objects" : [ {
"type" : "host",
"list" : objects_list_ip
}, {
"type" : "address-range",
"list" : objects_list_range
}]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
delete_objects_batch = client.api_call("delete-objects-batch", data_for_batch)
publish = client.api_call("publish")
print(delete_objects_batch.data)
เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเต เดธเตเดซเตโเดฑเตเดฑเตโเดตเตเดฏเดฑเดฟเดจเตเดฑเต เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเตเดเดณเดฟเตฝ เดฆเตเดถเตเดฏเดฎเดพเดเตเดจเตเดจ เดเดฒเตเดฒเดพ เดซเดเดเตโเดทเดจเตเดเดณเตเด เดเดเดจเดเดฟ API เดเตเดณเตเดเตพ เดจเตเดเตเดจเตเดจเต. เด เดเตเดเดจเต, R80.40-เตฝ เดฑเดฟเดตเตผเดเตเดเต เดเต เดฑเดฟเดตเดฟเดทเตป, เดธเตโเดฎเดพเตผเดเตเดเต เดเดพเดธเตโเดเต เดคเตเดเดเตเดเดฟเดฏ โเดธเดตเดฟเดถเตเดทเดคเดเตพโ เดชเตเดฐเดคเตเดฏเดเตเดทเดชเตเดชเตเดเตเดเต, เด เดตเดฏเตโเดเตเดเดพเดฏเดฟ เด เดจเตเดฌเดจเตเดง API เดเตเดณเตเดเตพ เดเดเดจเดเดฟ เดคเดฏเตเดฏเดพเดฑเดพเดเตเดเดฟ. เดเตเดเดพเดคเต, เดฒเตเดเดธเดฟ เดเตบเดธเตเดณเตเดเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดเตเดเตเดค เดชเตเดณเดฟเดธเดฟ เดฎเตเดกเดฟเดฒเตเดเตเดเต เดฎเดพเดฑเตเดฎเตเดชเตเตพ เดเดฒเตเดฒเดพ เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเตเด API เดชเดฟเดจเตเดคเตเดฃ เดจเตเดเตเดจเตเดจเต. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดธเตเดซเตโเดฑเตเดฑเตโเดตเตเดฏเตผ เดชเดคเดฟเดชเตเดชเต R80.40-เดฒเต เดฆเตเตผเดเดเดพเดฒเดฎเดพเดฏเดฟ เดเดพเดคเตเดคเดฟเดฐเตเดจเตเดจ เด เดชเตโเดกเตเดฑเตเดฑเต, เดฒเตเดเดธเดฟ เดฎเตเดกเดฟเตฝ เดจเดฟเดจเตเดจเต เดฏเตเดฃเดฟเดซเตเดกเต เดชเตเดณเดฟเดธเดฟ เดฎเตเดกเดฟเดฒเตเดเตเดเต HTTPS เดเตปเดธเตเดชเตเดเตเดทเตป เดชเตเดณเดฟเดธเดฟเดฏเตเดเต เดจเตเดเตเดเดฎเดพเดฃเต, เด เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเดจเต เดเดเดจเดเดฟ API เดเตเดณเตเดเตพ เดฒเดญเดฟเดเตเดเต. HTTPS เดเตปเดธเตเดชเตเดเตเดทเตป เดชเตเดณเดฟเดธเดฟเดฏเตเดเต เดเดฏเตผเดจเตเดจ เดธเตเดฅเดพเดจเดคเตเดคเตเดเตเดเต เดเดฐเต เดจเดฟเดฏเดฎเด เดเตเตผเดเตเดเตเดจเตเดจ เดเตเดกเดฟเดจเตเดฑเต เดเดฐเต เดเดฆเดพเดนเดฐเดฃเด เดเดคเดพ, เดชเดฐเดฟเดถเตเดงเดจเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต 3 เดตเดฟเดญเดพเดเดเตเดเดณเต (เดเดฐเตเดเตเดฏเด, เดงเดจเดเดพเดฐเตเดฏเด, เดธเตผเดเตเดเดพเตผ เดธเตเดตเดจเดเตเดเตพ) เดเดดเดฟเดตเดพเดเตเดเตเดจเตเดจเต, เด เดต เดจเดฟเดฐเดตเดงเดฟ เดฐเดพเดเตเดฏเดเตเดเดณเดฟเตฝ เดจเดฟเดฏเดฎเด เด เดจเตเดธเดฐเดฟเดเตเดเต เดชเดฐเดฟเดถเตเดงเดจเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฟเดฐเตเดงเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต.
HTTPS เดชเดฐเดฟเดถเตเดงเดจ เดจเดฏเดคเตเดคเดฟเดฒเตเดเตเดเต เดเดฐเต เดจเดฟเดฏเดฎเด เดเตเตผเดเตเดเตเด
from cpapi import APIClient, APIClientArgs
client_args = APIClientArgs(server="192.168.47.240")
data = {
"layer" : "Default Layer",
"position" : "top",
"name" : "Legal Requirements",
"action": "bypass",
"site-category": ["Health", "Government / Military", "Financial Services"]
}
with APIClient(client_args) as client:
login = client.login_with_api_key('3TsbPJ8ZKjaJGvFyoFqHFA==')
add_https_rule = client.api_call("add-https-rule", data)
publish = client.api_call("publish")
เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเต เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต เดธเตเตผเดตเดฑเดฟเตฝ เดชเตเดคเตเดคเตบ เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต
เดเดฒเตเดฒเดพเด เดเดจเตเดจเตเดคเดจเตเดจเต
เดธเตเดฐเดเตเดทเดพ เดชเดฐเดฟเดถเตเดงเดจเดฏเตเดเต เดฆเตเดฐเตเดค เดธเดเตเดเตเดเดฐเดฃเดคเตเดคเดฟเดจเตเดณเตเดณ เดธเตโเดเตเดฐเดฟเดชเตเดฑเตเดฑเต
from __future__ import print_function
import getpass
import sys, os
sys.path.append(os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
from cpapi import APIClient, APIClientArgs
def main():
with APIClient() as client:
# if client.check_fingerprint() is False:
# print("Could not get the server's fingerprint - Check connectivity with the server.")
# exit(1)
login_res = client.login_as_root()
if login_res.success is False:
print("Login failed:n{}".format(login_res.error_message))
exit(1)
gw_name = raw_input("Enter the gateway name:")
gw_ip = raw_input("Enter the gateway IP address:")
if sys.stdin.isatty():
sic = getpass.getpass("Enter one-time password for the gateway(SIC): ")
else:
print("Attention! Your password will be shown on the screen!")
sic = raw_input("Enter one-time password for the gateway(SIC): ")
version = raw_input("Enter the gateway version(like RXX.YY):")
add_gw = client.api_call("add-simple-gateway", {'name' : gw_name, 'ipv4-address' : gw_ip, 'one-time-password' : sic, 'version': version.capitalize(), 'application-control' : 'true', 'url-filtering' : 'true', 'ips' : 'true', 'anti-bot' : 'true', 'anti-virus' : 'true', 'threat-emulation' : 'true'})
if add_gw.success and add_gw.data['sic-state'] != "communicating":
print("Secure connection with the gateway hasn't established!")
exit(1)
elif add_gw.success:
print("The gateway was added successfully.")
gw_uid = add_gw.data['uid']
gw_name = add_gw.data['name']
else:
print("Failed to add the gateway - {}".format(add_gw.error_message))
exit(1)
change_policy = client.api_call("set-access-layer", {"name" : "Network", "applications-and-url-filtering": "true", "content-awareness": "true"})
if change_policy.success:
print("The policy has been changed successfully")
else:
print("Failed to change the policy- {}".format(change_policy.error_message))
change_rule = client.api_call("set-access-rule", {"name" : "Cleanup rule", "layer" : "Network", "action": "Accept", "track": {"type": "Detailed Log", "accounting": "true"}})
if change_rule.success:
print("The cleanup rule has been changed successfully")
else:
print("Failed to change the cleanup rule- {}".format(change_rule.error_message))
# publish the result
publish_res = client.api_call("publish", {})
if publish_res.success:
print("The changes were published successfully.")
else:
print("Failed to publish the changes - {}".format(install_tp_policy.error_message))
install_access_policy = client.api_call("install-policy", {"policy-package" : "Standard", "access" : 'true', "threat-prevention" : 'false', "targets" : gw_uid})
if install_access_policy.success:
print("The access policy has been installed")
else:
print("Failed to install access policy - {}".format(install_tp_policy.error_message))
install_tp_policy = client.api_call("install-policy", {"policy-package" : "Standard", "access" : 'false', "threat-prevention" : 'true', "targets" : gw_uid})
if install_tp_policy.success:
print("The threat prevention policy has been installed")
else:
print("Failed to install threat prevention policy - {}".format(install_tp_policy.error_message))
# add passwords and passphrases to dictionary
with open('additional_pass.conf') as f:
line_num = 0
for line in f:
line_num += 1
add_password_dictionary = client.api_call("run-script", {"script-name" : "Add passwords and passphrases", "script" : "printf "{}" >> $FWDIR/conf/additional_pass.conf".format(line), "targets" : gw_name})
if add_password_dictionary.success:
print("The password dictionary line {} was added successfully".format(line_num))
else:
print("Failed to add the dictionary - {}".format(add_password_dictionary.error_message))
main()
เดเดฐเต เดชเดพเดธเตโเดตเตเดกเต เดจเดฟเดเดฃเตเดเต เดเตเดเดฟเดฏเตเดณเตเดณ เดเดฐเต เดเดฆเดพเดนเดฐเดฃ เดซเดฏเตฝ added_pass.conf
{
"passwords" : ["malware","malicious","infected","Infected"],
"phrases" : ["password","Password","Pass","pass","codigo","key","pwd","ะฟะฐัะพะปั","ะะฐัะพะปั","ะะปัั","ะบะปัั","ัะธัั","ะจะธัั"]
}
เดคเตเดฐเตเดฎเดพเดจเด
เด เดฒเตเดเดจเด เดเตเดฒเดฟเดฏเตเดเต เด
เดเดฟเดธเตเดฅเดพเดจ เดธเดพเดงเตเดฏเดคเดเตพ เดฎเดพเดคเตเดฐเด เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเต เดชเตเดคเตเดคเตบ SDK เดฎเตเดกเตเดฏเตเดณเตเด cpapi(เดจเดฟเดเตเดเตพ เดเดนเดฟเดเตเดเดคเตเดชเตเดฒเต, เดเดต เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ เดชเดฐเตเดฏเดพเดฏเดเตเดเดณเดพเดฃเต), เดเตเดเดพเดคเต เด เดฎเตเดกเตเดฏเตเดณเดฟเดฒเต เดเตเดกเต เดชเด เดฟเดเตเดเตเดจเตเดจเดคเดฟเดฒเตเดเต, เด
เดคเดฟเดจเตเดเตเดชเตเดชเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดเตเดเตเดคเตฝ เดธเดพเดงเตเดฏเดคเดเตพ เดจเดฟเดเตเดเตพ เดเดฃเตเดเตเดคเตเดคเตเด. เดจเดฟเดเตเดเดณเตเดเต เดธเตเดตเดจเตเดคเด เดเตเดฒเดพเดธเตเดเตพ, เดซเดเดเตโเดทเดจเตเดเตพ, เดฐเตเดคเดฟเดเตพ, เดตเตเดฐเดฟเดฏเดฌเดฟเดณเตเดเตพ เดเดจเตเดจเดฟเดตเดฏเตโเดเตเดเตเดชเตเดชเด เดเดคเต เดธเดชเตเดฒเดฟเดฎเตเดจเตเดฑเต เดเตเดฏเตเดฏเดพเตป เดจเดฟเดเตเดเตพ เดเดเตเดฐเดนเดฟเดเตเดเตเดจเตเดจเตเดฃเตเดเดพเดเดพเด. เดตเดฟเดญเดพเดเดคเตเดคเดฟเดฒเต เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเดฟเดจเดพเดฏเดฟ เดจเดฟเดเตเดเตพเดเตเดเต เดเดฒเตเดฒเดพเดฏเตเดชเตเดชเตเดดเตเด เดจเดฟเดเตเดเดณเตเดเต เดเตเดฒเดฟ เดชเดเตเดเดฟเดเดพเดจเตเด เดฎเดฑเตเดฑเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเตเดเตพ เดเดพเดฃเดพเดจเตเด เดเดดเดฟเดฏเตเด
เดธเดจเตเดคเตเดทเดเดฐเดฎเดพเดฏ เดเตเดกเดฟเดเดเตเด เด
เดตเดธเดพเดจเด เดตเดฐเต เดตเดพเดฏเดฟเดเตเดเดคเดฟเดจเต เดจเดจเตเดฆเดฟ!
เด
เดตเดฒเดเดฌเด: www.habr.com