On this page
bigip_asm_policy - Manage BIG-IP ASM policies
New in version 2.5.
Synopsis
- Manage BIG-IP ASM policies.
 
Requirements
The below requirements are needed on the host that executes this module.
- f5-sdk >= 3.0.9
 
Parameters
| Parameter | Choices/Defaults | Comments | |
|---|---|---|---|
| active  
        bool
         | 
      
       
  | 
      
        
        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.
         | 
     |
| password  
        required
         | 
      
        
        The password for the user account used to connect to the BIG-IP. You can omit this option if the environment variable  
       F5_PASSWORD is set.
       aliases: pass, pwd  | 
     ||
| provider  
        (added in 2.5)
         | 
      
        
        A dict object containing connection details.
         | 
     ||
| password  
        required
         | 
      
        
        The password for the user account used to connect to the BIG-IP. You can omit this option if the environment variable  
       F5_PASSWORD is set.
       aliases: pass, pwd  | 
     ||
| server  
        required
         | 
      
        
        The BIG-IP host. You can omit this option if the environment variable  F5_SERVER is set.
        | 
     ||
| server_port | Default: 
        443
         | 
      
        
        The BIG-IP server port. You can omit this option if the environment variable  F5_SERVER_PORT is set.
        | 
     |
| user  
        required
         | 
      
        
        The username to connect to the BIG-IP with. This user must have administrative privileges on the device. You can omit this option if the environment variable  F5_USER is set.
        | 
     ||
| validate_certs  
        bool
         | 
      
       
  | 
      
        
        If  no, SSL certificates will not be validated. Use this only on personally controlled sites using self-signed certificates. You can omit this option if the environment variable F5_VALIDATE_CERTS is set.
        | 
     |
| timeout | Default: 
        10
         | 
      
        
        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.
         | 
     |
| ssh_keyfile | 
        
        Specifies the SSH keyfile to use to authenticate the connection to the remote device. This argument is only used for cli transports. If the value is not specified in the task, the value of environment variable  ANSIBLE_NET_SSH_KEYFILE will be used instead.
        | 
     ||
| transport  
        required
         | 
      
       
  | 
      
        
        Configures the transport connection to use when connecting to the remote device.
         | 
     |
| server  
        required
         | 
      
        
        The BIG-IP host. You can omit this option if the environment variable  F5_SERVER is set.
        | 
     ||
| server_port  
        (added in 2.2)
         | 
      Default: 
        443
         | 
      
        
        The BIG-IP server port. You can omit this option if the environment variable  F5_SERVER_PORT is set.
        | 
     |
| state | 
       
  | 
      
        
        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 | 
       
  | 
      
        
        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.
        | 
     |
| user  
        required
         | 
      
        
        The username to connect to the BIG-IP with. This user must have administrative privileges on the device. You can omit this option if the environment variable  F5_USER is set.
        | 
     ||
| validate_certs  
        bool
         
        (added in 2.0)
         | 
      
       
  | 
      
        
        If  no, SSL certificates will not be validated. Use this only on personally controlled sites using self-signed certificates. You can omit this option if the environment variable F5_VALIDATE_CERTS is set.
        | 
     |
Notes
Note
- For more information on using Ansible to manage F5 Networks devices see https://www.ansible.com/integrations/networks/f5.
 - Requires the f5-sdk Python package on the host. This is as easy as 
pip install f5-sdk. 
Examples
- name: Import and activate ASM policy
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: new_asm_policy
    file: /root/asm_policy.xml
    active: yes
    state: present
  delegate_to: localhost
- name: Import ASM policy from template
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: new_sharepoint_policy
    template: SharePoint 2007 (http)
    state: present
  delegate_to: localhost
- name: Create blank ASM policy
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: new_blank_policy
    state: present
  delegate_to: localhost
- name: Create blank ASM policy and activate
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: new_blank_policy
    active: yes
    state: present
  delegate_to: localhost
- name: Activate ASM policy
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: inactive_policy
    active: yes
    state: present
  delegate_to: localhost
- name: Deactivate ASM policy
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: active_policy
    state: present
  delegate_to: localhost
- name: Import and activate ASM policy in Role
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: new_asm_policy
    file: "{{ role_path }}/files/asm_policy.xml"
    active: yes
    state: present
  delegate_to: localhost
- name: Import ASM binary policy
  bigip_asm_policy:
    server: lb.mydomain.com
    user: admin
    password: secret
    name: new_asm_policy
    file: "/root/asm_policy.plc"
    active: yes
    state: present
  delegate_to: localhost
  Return Values
Common return values are documented here, the following are the fields unique to this module:
| Key | Returned | Description | 
|---|---|---|
| active  
        bool
         | 
      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 is flagged as preview which means that it is not guaranteed to have a backwards compatible interface.
Maintenance
This module is flagged as community which means that it is maintained by the Ansible Community. See Module Maintenance & Support for more info.
For a list of other modules that are also maintained by the Ansible Community, see here.
Author
- Wojciech Wypior (@wojtek0806)
 - Tim Rupp (@caphrim007)
 
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
 https://docs.ansible.com/ansible/2.6/modules/bigip_asm_policy_module.html