fwebos_content_routing_policy_match_list.py – Config FortiWeb Content Routing Policy Match Details.

New in version 1.0.1.

Synopsis

Config FortiWeb Content Routing Policy Match Details

Requirements

The below requirements are needed on the host that executes this module.

  • ansible>=2.11

FortiWeb Version Compatibility


v7.0.x v7.2.x v7.4.x v7.6.x
fwebos_content_routing_policy_match_list.py yes yes yes yes

Parameters

  • body Possible parameters to go in the body for the request required: True
    • policy_name name of content routing policy type:string maxLength:63
    • match_object Match against the input types in the HTTP Request Header. type:string choice: http-host, http-request, url-parameter, http-referer, http-cookie, http-header, source-ip, x509-certificate-Subject, x509-certificate-Extension, https-sni, geo-ip
    • match_condition How the values in match object interact with the match string. This field is used when 'match_object' is 'http-host', 'http-request', 'http-referer', 'source-ip', 'x509-certificate-Subject', 'x509-certificate-Extension', or 'https-sni'. type:string choice: match-begin (The match object ends with the match string), match-sub (The match object contains the match string), match-end (The match object ends with the match string), match-domain (The match object contains the match string between dots), equal (The match object is equal to the match string), match-reg (The match object matches the specified regular expression)
    • match_expression The content of match string. type:string maxLength:2071
    • concatenate Choose the relationship with the previous rule. The AND relationship has higher precedence than OR in the match sequence. type:string choice: enable, disable
    • parameter_name_match_condition Parameter Name match type. Use this field when 'match_object' is 'url-parameter', 'http-cookie', or 'http-header'. type:string choice: match-begin (The match object ends with the match string), match-sub (The match object contains the match string), match-end (The match object ends with the match string), equal (The match object is equal to the match string), match-reg (The match object matches the specified regular expression)
    • parameter_name_match_condition_val Parameter Name match string. type:string maxLength:2071
    • parameter_value_match_condition Parameter Value match type. type:string choice: match-begin (The match object ends with the match string), match-sub (The match object contains the match string), match-end (The match object ends with the match string), equal (The match object is equal to the match string), match-reg (The match object matches the specified regular expression)
    • parameter_value_match_condition_val Parameter Value match string. type:string maxLength:2071
    • x509_subject_name X509 Field Name. type:string choice: E, CN, OU, O, L, ST, C
    • country_list Country list when 'match_object' is 'geo-ip' type:list
    • mkey If present, objects will be filtered on property with this name type:string
    • vdom Specify the Virtual Domain(s) from which results are returned or changes are applied to. If this parameter is not provided, the management VDOM will be used. If the admin does not have access to the VDOM, a permission error will be returned. The URL parameter is one of: vdom=root (Single VDOM) vdom=vdom1,vdom2 (Multiple VDOMs) vdom=* (All VDOMs) type:array
    • clone_mkey Use *clone_mkey* to specify the ID for the new resource to be cloned. If *clone_mkey* is set, *mkey* must be provided which is cloned from. type:string

Examples

- name:
  hosts: all
  vars:
  connection: httpapi
  gather_facts: false
  tasks:
    - name: Create a url-parameter
      fwebos_content_routing_policy_match_list:
       action: add
       policy_name: crp1
       match_object: url-parameter
       parameter_name_match_condition: equal
       parameter_value_match_condition: equal
       parameter_name_match_condition_val: YYYY
       parameter_value_match_condition_val: ZZZZ
       concatenate: and

    - name: Create a http post
      fwebos_content_routing_policy_match_list:
       action: add
       policy_name: crp1
       match_object: http-post
       match_condition: equal
       match_expression: pattern
       concatenate: and

    - name: Create a x509-certificate-Subject
      fwebos_content_routing_policy_match_list:
       action: add
       policy_name: crp1
       match_object: x509-certificate-Subject
       match_condition: equal
       match_expression: 888
       x509_subject_name: CN
       concatenate: and

    - name: Create a geo-ip
      fwebos_content_routing_policy_match_list:
       action: add
       policy_name: crp1
       match_object: geo-ip
       country_list:
        - Angola
        - Bahrain
       concatenate: and

    - name: edit a http post
      fwebos_content_routing_policy_match_list:
       action: edit
       policy_name: crp1
       id: 1
       match_expression: new_expression

    - name: edit a url-parameter
      fwebos_content_routing_policy_match_list:
       action: edit
       policy_name: crp1
       match_object: url-parameter
       id: 2
       parameter_name_match_condition: match-reg
       parameter_value_match_condition: match-reg
       parameter_name_match_condition_val: xxxx1
       parameter_value_match_condition_val: yyyy1
       concatenate: or

    - name: get
      fwebos_content_routing_policy_match_list:
       action: get
       policy_name: crp1
       id: 1

    - name: delete
      fwebos_content_routing_policy_match_list:
       action: delete
       policy_name: crp1
       id: 1

Return Values

Common return values are documented: https://docs.ansible.com/ansible/latest/reference_appendices/common_return_values.html#common-return-values, the following are the fields unique to this module:

  • 200 : OK: Request returns successful
  • 400 : Bad Request: Request cannot be processed by the API
  • 401 : Not Authorized: Request without successful login session
  • 403 : Forbidden: Request is missing CSRF token or administrator is missing access profile permissions.
  • 404 : Resource Not Found: Unable to find the specified resource.
  • 405 : Method Not Allowed: Specified HTTP method is not allowed for this resource.
  • 413 : Request Entity Too Large: Request cannot be processed due to large entity
  • 424 : Failed Dependency: Fail dependency can be duplicate resource, missing required parameter, missing required attribute, invalid attribute value
  • 429 : Access temporarily blocked: Maximum failed authentications reached. The offended source is temporarily blocked for certain amount of time.
  • 500 : Internal Server Error: Internal error when processing the request

For errorcode please check FortiWeb API errorcode at : https://documenter.getpostman.com/view/11233300/TVetbkaK#887b9eb4-7c13-4338-a8db-16cc117f0119

Status

  • This module is not guaranteed to have a backwards compatible interface.

Authors

  • Jie Li
  • Brad Zhang

Hint

If you notice any issues in this documentation, you can create a pull request to improve it.