fwebos_waf_url_rewriting_rule_condition.py – Config FortiWeb URL Rewriting Rule Condition

New in version 1.0.1.

Synopsis

Config FortiWeb URL Rewriting Rule Condition

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_waf_url_rewriting_rule_condition.py yes yes yes yes

Parameters

  • body Possible parameters to go in the body for the request required: True
    • name The name of rewriting rule. type:string maxLength:63
    • id The index of rewriting rule condition. type:integer
    • object Select which part of the HTTP request will be tested for a match. type:string choice: http-host, http-url, http-location
    • reg_exp A regular Expression that defines either all matching or all non-matching objects.. type:string maxLength:255
    • protocol_filter Protocol Filter. type:string choice: enable, disable,
    • http_protocol Select which protocol will match this condition, either HTTP or HTTPS.. type:string choice: http, https,
    • reverse_match Indicate how to use Regular Expression when determining whether or not this URL rewriting condition is met. type:string choice: "yes" (Object does not match the regular expression), "no" (Object matches the regular expressionn)
    • 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: add a URL rewriting rule condition
     fwebos_waf_url_rewriting_rule_condition:
      action: add
      name: aa2
      object: http-location
      is_referer_essential: "yes"
      reg_exp: tttttt
      reverse_match: "no"
      content_type_filter: enable

   - name: get a URL rewriting rule condition
     fwebos_waf_url_rewriting_rule_condition:
      action: get
      name: aa2
      id: 1

   - name: edit a URL rewriting rule condition
     fwebos_waf_url_rewriting_rule_condition:
      action: edit
      name: aa2
      id: 3
      object: http-host
      protocol_filter: enable
      http_protocol: https
      reg_exp: abcd

   - name: delete a URL rewriting rule condition
     fwebos_waf_url_rewriting_rule_condition:
      action: delete
      name: aa2
      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

  • Joseph Chen

Hint

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