f5.bigip.tm.asm

Module contents

BIG-IP® Application Security Manager™ (ASM®) module.

REST URI
http://localhost/mgmt/tm/asm/
GUI Path
Security
REST Kind
tm:asm:*

Submodule List

attack_types
file_transfer
policy_templates BIG-IP® Application Security Manager™ (ASM®) module.
signature_sets
signature_statuses
signature_update
signatures
tasks BIG-IP® Application Security Manager™ (ASM®) tasks sub-module.
class f5.bigip.tm.asm.Asm(tm)[source]

Bases: f5.bigip.resource.OrganizingCollection

BIG-IP® Application Security Manager (ASM) organizing

collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
get_collection(**kwargs)

Call to obtain a list of the reference dicts in the instance items

Returns:
list: List of self.items
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

Submodules

attack_types

class f5.bigip.tm.asm.attack_types.Attack_Types_s(asm)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Attack Types collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.attack_types.Attack_Type(attack_types_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Attack Type resource

create(**kwargs)[source]

Create is not supported for Attack Type resource

Raises:UnsupportedOperation
delete(**kwargs)[source]

Delete is not supported for Attack Type resource

Raises:UnsupportedOperation
modify(**kwargs)[source]

Modify is not supported for Attack Type resource

Raises:UnsupportedOperation
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.

file_transfer

class f5.bigip.tm.asm.file_transfer.File_Transfer(tm)[source]

Bases: f5.bigip.resource.OrganizingCollection

BIG-IP® ASM File Transfer collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
get_collection(**kwargs)

Call to obtain a list of the reference dicts in the instance items

Returns:
list: List of self.items
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.file_transfer.Uploads(file_transfer)[source]

Bases: f5.bigip.resource.PathElement, f5.bigip.mixins.AsmFileMixin

A file upload resource.

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
class f5.bigip.tm.asm.file_transfer.Downloads(file_transfer)[source]

Bases: f5.bigip.resource.PathElement, f5.bigip.mixins.AsmFileMixin

A file download resource.

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values

policy_templates

BIG-IP® Application Security Manager™ (ASM®) module.

REST URI
http://localhost/mgmt/tm/asm/policy-templates
GUI Path
Security -> Options -> Advanced Configuration -> Policy Templates
REST Kind
tm:asm:policy-templates:*
class f5.bigip.tm.asm.policy_templates.Policy_Templates_s(asm)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Policiy Templates collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.policy_templates.Policy_Template(policy_templates_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Policy Template resource.

create(**kwargs)[source]

Create is not supported for Policy Template resources

Raises:UnsupportedOperation
delete(**kwargs)[source]

Delete is not supported for Policy Template resources

Raises:UnsupportedOperation
modify(**patch)[source]

Modify is not supported for Policy Template resources

Raises:UnsupportedOperation
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.

signature_sets

class f5.bigip.tm.asm.signature_sets.Signature_Sets_s(asm)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Signature Sets collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.signature_sets.Signature_Set(signature_sets_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Signature Set resource.

note:: Only user created sets can be modified/deleted.
Default sets are READ-ONLY
create(**kwargs)

Create the resource on the BIG-IP®.

Uses HTTP POST to the collection URI to create a resource associated with a new unique URI on the device.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

All the key-values needed to create the resource.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.post method where it will be handled according to that API.

Returns:
Resource: A python object that represents the object’s configuration
and state on the BIG-IP®.
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.

signature_statuses

class f5.bigip.tm.asm.signature_statuses.Signature_Statuses_s(asm)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Signature Statuses collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.signature_statuses.Signature_Status(signature_statuses_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Signature Status resource

create(**kwargs)[source]

Create is not supported for Signature Status resource

Raises:UnsupportedOperation
delete(**kwargs)[source]

Delete is not supported for Signature Status resource

Raises:UnsupportedOperation
modify(**kwargs)[source]

Modify is not supported for Signature Status resource

Raises:UnsupportedOperation
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.

signature_udpate

class f5.bigip.tm.asm.signature_update.Signature_Update(asm)[source]

Bases: f5.bigip.resource.UnnamedResource

BIG-IP® ASM Signature Update resource

update(**kwargs)[source]

Update is not supported for Signature Update resource

Raises:UnsupportedOperation
create(**kwargs)

Create is not supported for unnamed resources

Raises:
UnsupportedMethod: If the method is used
delete(**kwargs)

Delete is not supported for unnamed resources

Raises:
UnsupportedMethod: If the method is used
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

signatures

class f5.bigip.tm.asm.signatures.Signatures_s(asm)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Signatures collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.signatures.Signature(signatures_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Signature resource.

note:: Only user created signatures can be modified/deleted.
Default signatures are READ-ONLY
create(**kwargs)[source]

Custom creation logic to handle edge cases

This shouldn’t be needed, but ASM has a tendency to raise various errors that are painful to handle from a customer point-of-view. These errors are especially pronounced when doing things concurrently with asm.

The error itself are described in their exception handler

To address these failure, we try a number of exception handling cases to catch and reliably deal with the error.

Parameters:kwargs
Returns:
delete(**kwargs)[source]

Custom deletion logic to handle edge cases

This shouldn’t be needed, but ASM has a tendency to raise various errors that are painful to handle from a customer point-of-view. These errors are especially pronounced when doing things concurrently with asm.

The error itself are described in their exception handler

To address these failure, we try a number of exception handling cases to catch and reliably deal with the error.

Parameters:kwargs
Returns:
modify(**kwargs)[source]

Modify the configuration of the resource on device based on patch

update(**kwargs)[source]

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

tasks

BIG-IP® Application Security Manager™ (ASM®) tasks sub-module.

REST URI
http://localhost/mgmt/tm/asm/tasks/
GUI Path
Security
REST Kind
tm:asm:tasks:
class f5.bigip.tm.asm.tasks.Tasks(asm)[source]

Bases: f5.bigip.resource.OrganizingCollection

BIG-IP® ASM Tasks organizing collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
get_collection(**kwargs)

Call to obtain a list of the reference dicts in the instance items

Returns:
list: List of self.items
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Apply_Policy_s(tasks)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Apply Policy Collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Apply_Policy(apply_policy_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Apply Policy Resource.

modify(**kwargs)[source]

Modify is not supported for Apply Policy resource

Raises:UnsupportedOperation
create(**kwargs)

Create the resource on the BIG-IP®.

Uses HTTP POST to the collection URI to create a resource associated with a new unique URI on the device.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

All the key-values needed to create the resource.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.post method where it will be handled according to that API.

Returns:
Resource: A python object that represents the object’s configuration
and state on the BIG-IP®.
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.
class f5.bigip.tm.asm.tasks.Export_Policy_s(tasks)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Export Policy Collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Export_Policy(export_policy_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Export Policy Resource.

modify(**kwargs)[source]

Modify is not supported for Apply Policy resource

Raises:UnsupportedOperation
create(**kwargs)

Create the resource on the BIG-IP®.

Uses HTTP POST to the collection URI to create a resource associated with a new unique URI on the device.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

All the key-values needed to create the resource.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.post method where it will be handled according to that API.

Returns:
Resource: A python object that represents the object’s configuration
and state on the BIG-IP®.
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.
class f5.bigip.tm.asm.tasks.Import_Policy_s(tasks)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Import Policy Collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Import_Policy(import_policy_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Import Policy Resource.

create(**kwargs)[source]

Create the resource on the BIG-IP®.

Uses HTTP POST to the collection URI to create a resource associated with a new unique URI on the device.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

All the key-values needed to create the resource.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.post method where it will be handled according to that API.

Returns:
Resource: A python object that represents the object’s configuration
and state on the BIG-IP®.
modify(**kwargs)[source]

Modify is not supported for Apply Policy resource

Raises:UnsupportedOperation
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.
class f5.bigip.tm.asm.tasks.Check_Signatures_s(tasks)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Tasks Check Signatures Collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Check_Signature(check_signatures_s)[source]

Bases: f5.bigip.resource.AsmTaskResource

BIG-IP® ASM Tasks Check Signature Resource

To create this resource on the ASM, one must utilize fetch() method from AsmTaskResource class, create() is not supported.

create(**kwargs)

Create is not supported for Task ASM resources

Raises:UnsupportedOperation
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
fetch()

Fetch the ASM resource on the BIG-IP®.

This is a heavily modified version of create, that does not allow any arguments when executing. It uses an emtpy json{} HTTP POST to prompt the BIG-IP® to create the object, mainly used by ‘Tasks’ endpoint.

load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
modify(**kwargs)

Modify is not supported for Task ASM resources

Raises:UnsupportedOperation
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.
class f5.bigip.tm.asm.tasks.Export_Signatures_s(tasks)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Tasks Export Signatures Collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Export_Signature(export_signatures_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Tasks Export Signature Resource

modify(**kwargs)[source]

Modify is not supported for Export Signature resource

Raises:UnsupportedOperation
create(**kwargs)

Create the resource on the BIG-IP®.

Uses HTTP POST to the collection URI to create a resource associated with a new unique URI on the device.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

All the key-values needed to create the resource.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.post method where it will be handled according to that API.

Returns:
Resource: A python object that represents the object’s configuration
and state on the BIG-IP®.
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.
class f5.bigip.tm.asm.tasks.Update_Signatures_s(tasks)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Tasks Update Signatures Collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Update_Signature(update_signatures_s)[source]

Bases: f5.bigip.resource.AsmTaskResource

BIG-IP® ASM Tasks Update Signature Resource resource

To create this resource on the ASM, one must utilize fetch() method from AsmTaskResource class, create() is not supported.

create(**kwargs)

Create is not supported for Task ASM resources

Raises:UnsupportedOperation
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
fetch()

Fetch the ASM resource on the BIG-IP®.

This is a heavily modified version of create, that does not allow any arguments when executing. It uses an emtpy json{} HTTP POST to prompt the BIG-IP® to create the object, mainly used by ‘Tasks’ endpoint.

load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
modify(**kwargs)

Modify is not supported for Task ASM resources

Raises:UnsupportedOperation
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.
class f5.bigip.tm.asm.tasks.Import_Vulnerabilities_s(tasks)[source]

Bases: f5.bigip.resource.Collection

BIG-IP® ASM Import Vulnerabilities Collection.

create(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete(**kwargs)

Implement this by overriding it in a subclass of Resource

Raises:
InvalidResource: If method is used.
delete_collection(**kwargs)

One can not simply delete a collection.

This is to support odata usage via the options request parameter:

requests_params={'params': 'options=glob_pattern'}

where glob_pattern can be used to delete one or all of a particular collection. Not submitting the requests params will fail, and specifying patterns that match default resources will fail as well.

get_collection(**kwargs)

Get an iterator of Python Resource objects that represent URIs.

The returned objects are Pythonic Resource`s that map to the most recently `refreshed state of uris-resources published by the device. In order to instantiate the correct types, the concrete subclass must populate its registry with acceptable types, based on the kind field returned by the REST server.

Note

This method implies a single REST transaction with the Collection subclass URI.

Raises:UnregisteredKind
Returns:list of reference dicts and Python Resource objects
modify(**patch)

Modify the configuration of the resource on device based on patch

raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update the configuration of the resource on the BIG-IP®.

This method uses HTTP PUT alter the resource state on the BIG-IP®.

The attributes of the instance will be packaged as a dictionary. That dictionary will be updated with kwargs. It is then submitted as JSON to the device.

Various edge cases are handled: * read-only attributes that are unchangeable are removed

Args:
kwargs (dict): Arbitrary number of keyword arguments.

Keys and associated values to alter on the device.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.put method where it will be handled according to that API.

class f5.bigip.tm.asm.tasks.Import_Vulnerabilities(import_vulnerabilities_s)[source]

Bases: f5.bigip.resource.AsmResource

BIG-IP® ASM Import Vulnerabilities Resource.

modify(**kwargs)[source]

Modify is not supported for Import Vulnerabilities resource

Raises:UnsupportedOperation
create(**kwargs)

Create the resource on the BIG-IP®.

Uses HTTP POST to the collection URI to create a resource associated with a new unique URI on the device.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

All the key-values needed to create the resource.

If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.post method where it will be handled according to that API.

Returns:
Resource: A python object that represents the object’s configuration
and state on the BIG-IP®.
delete(**kwargs)

Delete the ASM resource on the BIG-IP®.

Uses HTTP DELETE to delete the ASM resource on the BIG-IP®.

After this method is called, and status_code 200 or 201 response is received instance.__dict__ is replace with {'deleted': True}

Args:
kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.delete method where it will be handled according to that API.
exists(**kwargs)

Check for the existence of the ASM object on the BIG-IP

Sends an HTTP GET to the URI of the ASM object and if it fails with a :exc:~requests.HTTPError` exception it checks the exception for status code of 404 and returns False in that case.

If the GET is successful it returns True.

For any other errors are raised as-is.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.

Keyword arguments required to get objects

If kwargs has a requests_param key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.

Returns:
bool: True is the object exists: False otherwise.
Raises:
requests.HTTPError: Any HTTP error that was not status code 404.
load(**kwargs)

Load an already configured service into this instance.

This method uses HTTP GET to obtain a resource from the BIG-IP®.

The URI of the target service is constructed from the instance’s container and \*\*kwargs.

kwargs typically for ASM requires “id” in majority of cases, as object links in ASM are using hash(id) instead of names, this may, or may not, be true for a specific service.

Args:
**kwargs (dict): Arbitrary number of keyword arguments.
If kwargs has a requests_params key the corresponding dict will be passed to the underlying requests.session.get method where it will be handled according to that API.
Returns:
Resource: Resource instance with a populated _meta_data[‘uri’]
raw

Display the attributes that the current object has and their values.

Returns:A dictionary of attributes and their values
refresh(**kwargs)

Use this to make the device resource be represented by self.

This method makes an HTTP GET query against the device service. This method is run for its side-effects on self. If successful the instance attribute __dict__ is replaced with the dict representing the device state. To figure out what that state is, run a subsequest query of the object like this: As with all CURDLE methods use a “requests_params” dict to pass parameters to requests.session.HTTPMETHOD. See test_requests_params.py for an example. >>> resource_obj.refresh() >>> print(resource_obj.raw)

update(**kwargs)

Update is not supported for ASM Resources

Raises:
UnsupportedOperation: If method is used.