# bigip_asm_policy – Manage BIG-IP ASM policies

New in version 2.5.

- DEPRECATED
- Synopsis
- Parameters
- Notes
- Examples
- Return Values
- Status

## DEPRECATED

Removed in Ansible:
| version: 2.12
Why: | The bigip_asm_policy module has been split into three new modules to handle import, export and general policy management. This will allow scalability of the asm policy management as well as ease of maintenance. Additionally to further reduce the burden of having multiple smaller module F5 has created asm_policy role in Ansible Galaxy for a more declarative way of ASM policy management.
Alternative: | bigip_asm_policy_manage

## Synopsis

- Manage BIG-IP ASM policies.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---

active
boolean

Choices:
- no ←
- yes

If `yes` will apply and activate existing inactive policy. If `no`, it will deactivate existing active policy. Generally should be `yes` only in cases where you want to activate new or existing policy.

file - |  | Full path to a policy file to be imported into the BIG-IP ASM. Policy files exported from newer versions of BIG-IP cannot be imported into older versions of BIG-IP. The opposite, however, is true; you can import older into newer.
name - / required |  | The ASM policy to manage or create.
partition - | Default: "Common" | Device partition to manage resources on.
provider dictionary added in 2.5 |  | A dict object containing connection details.
| auth_provider string |  | Configures the auth provider for to obtain authentication tokens from the remote device. This option is really used when working with BIG-IQ devices.
| password string / required |  | The password for the user account used to connect to the BIG-IP. You may omit this option by setting the environment variable `F5_PASSWORD`. aliases: pass, pwd
| server string / required |  | The BIG-IP host. You may omit this option by setting the environment variable `F5_SERVER`.
| server_port integer | Default: 443 | The BIG-IP server port. You may omit this option by setting the environment variable `F5_SERVER_PORT`.
| ssh_keyfile path |  | Specifies the SSH keyfile to use to authenticate the connection to the remote device. This argument is only used for cli transports. You may omit this option by setting the environment variable `ANSIBLE_NET_SSH_KEYFILE`.
| timeout integer |  | Specifies the timeout in seconds for communicating with the network device for either connecting or sending commands. If the timeout is exceeded before the operation is completed, the module will error.

transport
string

Choices:
- cli
- rest ←

Configures the transport connection to use when connecting to the remote device.

| user string / required |  | The username to connect to the BIG-IP with. This user must have administrative privileges on the device. You may omit this option by setting the environment variable `F5_USER`.

validate_certs
boolean

Choices:
- no
- yes ←

If `no`, SSL certificates are not validated. Use this only on personally controlled sites using self-signed certificates.
You may omit this option by setting the environment variable `F5_VALIDATE_CERTS`.

state
-

Choices:
- present ←
- absent

When `state` is `present`, and `file` or `template` parameter is provided, new ASM policy is imported and created with the given `name`.
When `state` is present and no `file` or `template` parameter is provided new blank ASM policy is created with the given `name`.
When `state` is `absent`, ensures that the policy is removed, even if it is currently active.

template
-

Choices:
- ActiveSync v1.0 v2.0 (http)
- ActiveSync v1.0 v2.0 (https)
- Comprehensive
- Drupal
- Fundamental
- Joomla
- LotusDomino 6.5 (http)
- LotusDomino 6.5 (https)
- OWA Exchange 2003 (http)
- OWA Exchange 2003 (https)
- OWA Exchange 2003 with ActiveSync (http)
- OWA Exchange 2003 with ActiveSync (https)
- OWA Exchange 2007 (http)
- OWA Exchange 2007 (https)
- OWA Exchange 2007 with ActiveSync (http)
- OWA Exchange 2007 with ActiveSync (https)
- OWA Exchange 2010 (http)
- OWA Exchange 2010 (https)
- Oracle 10g Portal (http)
- Oracle 10g Portal (https)
- Oracle Applications 11i (http)
- Oracle Applications 11i (https)
- PeopleSoft Portal 9 (http)
- PeopleSoft Portal 9 (https)
- Rapid Deployment Policy
- SAP NetWeaver 7 (http)
- SAP NetWeaver 7 (https)
- SharePoint 2003 (http)
- SharePoint 2003 (https)
- SharePoint 2007 (http)
- SharePoint 2007 (https)
- SharePoint 2010 (http)
- SharePoint 2010 (https)
- Vulnerability Assessment Baseline
- Wordpress

An ASM policy built-in template. If the template does not exist we will raise an error.
Once the policy has been created, this value cannot change.
The `Comprehensive`, `Drupal`, `Fundamental`, `Joomla`, `Vulnerability Assessment Baseline`, and `Wordpress` templates are only available on BIG-IP versions >= 13.

## Notes

Note

- For more information on using Ansible to manage F5 Networks devices see https://www.ansible.com/integrations/networks/f5.
- Requires BIG-IP software version >= 12.
- The F5 modules only manipulate the running configuration of the F5 product. To ensure that BIG-IP specific configuration persists to disk, be sure to include at least one task that uses the bigip_config module to save the running configuration. Refer to the module’s documentation for the correct usage of the module to save your running configuration.

## Examples

    - name: Import and activate ASM policy
      bigip_asm_policy:
        name: new_asm_policy
        file: /root/asm_policy.xml
        active: yes
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

    - name: Import ASM policy from template
      bigip_asm_policy:
        name: new_sharepoint_policy
        template: SharePoint 2007 (http)
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

    - name: Create blank ASM policy
      bigip_asm_policy:
        name: new_blank_policy
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

    - name: Create blank ASM policy and activate
      bigip_asm_policy:
        name: new_blank_policy
        active: yes
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

    - name: Activate ASM policy
      bigip_asm_policy:
        name: inactive_policy
        active: yes
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

    - name: Deactivate ASM policy
      bigip_asm_policy:
        name: active_policy
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

    - name: Import and activate ASM policy in Role
      bigip_asm_policy:
        name: new_asm_policy
        file: "{{ role_path }}/files/asm_policy.xml"
        active: yes
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

    - name: Import ASM binary policy
      bigip_asm_policy:
        name: new_asm_policy
        file: "/root/asm_policy.plc"
        active: yes
        state: present
        provider:
          server: lb.mydomain.com
          user: admin
          password: secret
      delegate_to: localhost

## Return Values

Common return values are documented here, the following are the fields unique to this module:

Key | Returned | Description
--- | --- | ---
active boolean | changed | Set when activating/deactivating ASM policy Sample: True
file string | changed | Local path to ASM policy file. Sample: /root/some_policy.xml
name string | changed | Name of the ASM policy to be managed/created Sample: Asm_APP1_Transparent
state string | changed | Action performed on the target device. Sample: absent
template string | changed | Name of the built-in ASM policy template Sample: OWA Exchange 2007 (https)

## Status

- This module will be removed in version 2.12. [deprecated]
- For more information see DEPRECATED.

### Authors

- Wojciech Wypior (@wojtek0806)
- Tim Rupp (@caphrim007)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.