|
@@ 4247-4303 (lines=57) @@
|
| 4244 |
|
|
| 4245 |
|
return self._send_xml_command(cmd) |
| 4246 |
|
|
| 4247 |
|
def modify_scanner(self, scanner_id, host, port, scanner_type, *, |
| 4248 |
|
comment=None, name=None, ca_pub=None, |
| 4249 |
|
credential_id=None): |
| 4250 |
|
"""Modifies an existing scanner. |
| 4251 |
|
|
| 4252 |
|
Arguments: |
| 4253 |
|
scanner_id (str): UUID of scanner to modify. |
| 4254 |
|
host (str): Host of the scanner. |
| 4255 |
|
port (str): Port of the scanner. |
| 4256 |
|
scanner_type (str): Type of the scanner. |
| 4257 |
|
'1' for OSP, '2' for OpenVAS (classic) Scanner. |
| 4258 |
|
comment (str, optional): Comment on scanner. |
| 4259 |
|
name (str, optional): Name of scanner. |
| 4260 |
|
ca_pub (str, optional): Certificate of CA to verify scanner's |
| 4261 |
|
certificate. |
| 4262 |
|
credential_id (str, optional): UUID of the client certificate |
| 4263 |
|
credential for the Scanner. |
| 4264 |
|
|
| 4265 |
|
Returns: |
| 4266 |
|
The response. See :py:meth:`send_command` for details. |
| 4267 |
|
""" |
| 4268 |
|
if not scanner_id: |
| 4269 |
|
raise RequiredArgument( |
| 4270 |
|
'modify_scanner requires a scanner_id argument') |
| 4271 |
|
if not host: |
| 4272 |
|
raise RequiredArgument('modify_scanner requires a host argument') |
| 4273 |
|
if not port: |
| 4274 |
|
raise RequiredArgument('modify_scanner requires a port argument') |
| 4275 |
|
if not scanner_type: |
| 4276 |
|
raise RequiredArgument('modify_scanner requires a scanner_type ' |
| 4277 |
|
'argument') |
| 4278 |
|
|
| 4279 |
|
cmd = XmlCommand('modify_scanner') |
| 4280 |
|
cmd.set_attribute('scanner_id', scanner_id) |
| 4281 |
|
cmd.add_element('host', host) |
| 4282 |
|
cmd.add_element('port', port) |
| 4283 |
|
|
| 4284 |
|
if scanner_type not in SCANNER_TYPES: |
| 4285 |
|
raise InvalidArgument('modify_scanner requires a scanner_type ' |
| 4286 |
|
'argument which must be either "1" for OSP ' |
| 4287 |
|
'or "2" OpenVAS (Classic).') |
| 4288 |
|
|
| 4289 |
|
cmd.add_element('type', scanner_type) |
| 4290 |
|
|
| 4291 |
|
if comment: |
| 4292 |
|
cmd.add_element('comment', comment) |
| 4293 |
|
|
| 4294 |
|
if name: |
| 4295 |
|
cmd.add_element('name', name) |
| 4296 |
|
|
| 4297 |
|
if ca_pub: |
| 4298 |
|
cmd.add_element('ca_pub', ca_pub) |
| 4299 |
|
|
| 4300 |
|
if credential_id: |
| 4301 |
|
cmd.add_element('credential', attrs={'id': str(credential_id)}) |
| 4302 |
|
|
| 4303 |
|
return self._send_xml_command(cmd) |
| 4304 |
|
|
| 4305 |
|
def modify_schedule(self, schedule_id, *, comment=None, name=None, |
| 4306 |
|
first_time_minute=None, first_time_hour=None, |
|
@@ 1203-1256 (lines=54) @@
|
| 1200 |
|
cmd.add_element('copy', role_id) |
| 1201 |
|
return self._send_xml_command(cmd) |
| 1202 |
|
|
| 1203 |
|
def create_scanner(self, name, host, port, scanner_type, ca_pub, |
| 1204 |
|
credential_id, *, comment=None): |
| 1205 |
|
"""Create a new scanner |
| 1206 |
|
|
| 1207 |
|
Arguments: |
| 1208 |
|
name (str): Name of the scanner |
| 1209 |
|
host (str): The host of the scanner |
| 1210 |
|
port (str): The port of the scanner |
| 1211 |
|
scanner_type (str): Type of the scanner. |
| 1212 |
|
'1' for OSP, '2' for OpenVAS (classic) Scanner. |
| 1213 |
|
ca_pub (str): Certificate of CA to verify scanner certificate |
| 1214 |
|
credential_id (str): UUID of client certificate credential for the |
| 1215 |
|
scanner |
| 1216 |
|
comment (str, optional): Comment for the scanner |
| 1217 |
|
|
| 1218 |
|
Returns: |
| 1219 |
|
The response. See :py:meth:`send_command` for details. |
| 1220 |
|
""" |
| 1221 |
|
if not name: |
| 1222 |
|
raise RequiredArgument('create_scanner requires a name argument') |
| 1223 |
|
|
| 1224 |
|
if not host: |
| 1225 |
|
raise RequiredArgument('create_scanner requires a host argument') |
| 1226 |
|
|
| 1227 |
|
if not port: |
| 1228 |
|
raise RequiredArgument('create_scanner requires a port argument') |
| 1229 |
|
|
| 1230 |
|
if not scanner_type: |
| 1231 |
|
raise RequiredArgument('create_scanner requires a scanner_type ' |
| 1232 |
|
'argument') |
| 1233 |
|
if not ca_pub: |
| 1234 |
|
raise RequiredArgument('create_scanner requires a ca_pub argument') |
| 1235 |
|
|
| 1236 |
|
if not credential_id: |
| 1237 |
|
raise RequiredArgument('create_scanner requires a credential_id ' |
| 1238 |
|
'argument') |
| 1239 |
|
|
| 1240 |
|
if scanner_type not in SCANNER_TYPES: |
| 1241 |
|
raise InvalidArgument('create_scanner requires a scanner_type ' |
| 1242 |
|
'argument which must be either "1" for OSP ' |
| 1243 |
|
'or "2" OpenVAS (Classic).') |
| 1244 |
|
|
| 1245 |
|
cmd = XmlCommand('create_scanner') |
| 1246 |
|
cmd.add_element('name', name) |
| 1247 |
|
cmd.add_element('host', host) |
| 1248 |
|
cmd.add_element('port', port) |
| 1249 |
|
cmd.add_element('type', scanner_type) |
| 1250 |
|
cmd.add_element('ca_pub', ca_pub) |
| 1251 |
|
cmd.add_element('credential', attrs={'id': str(credential_id)}) |
| 1252 |
|
|
| 1253 |
|
if comment: |
| 1254 |
|
cmd.add_element('comment', comment) |
| 1255 |
|
|
| 1256 |
|
return self._send_xml_command(cmd) |
| 1257 |
|
|
| 1258 |
|
def clone_scanner(self, scanner_id): |
| 1259 |
|
"""Clone an existing scanner |