fwebos_admin.py – Configure FortiWeb admin

New in version 1.0.1.

Synopsis

Configure FortiWeb admin

Requirements

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

  • ansible>=2.11

FortiWeb Version Compatibility


v7.0.0 v7.0.1 v7.0.2 v7.0.3
fwebos_admin.py yes yes yes yes

Parameters

  • body Possible parameters to go in the body for the request required: True
    • name admin user name type:string maxLength:63
    • access-profile admin user access profile type:string
    • trusthostv4 admin user trust host ip, default 0.0.0.0 for all type:string
    • trusthostv6 admin user trust host ip, default ::/0 for all type:string
    • last-name last name type:string maxLength:63
    • first-name first name type:string maxLength:63
    • email-address email address type:string maxLength:63
    • phone-number phone number type:string maxLength:63
    • mobile-number mobile number type:string maxLength:63
    • hidden admin user hidden attribute type:integer
    • domains virtual domain list type:string
    • type admin user auth type type:string choice: local-user, remote-user,
    • admin-usergrp admin user group type:string
    • password admin user password type:string format:password
    • wildcard enable/disable type:string choice: enable, disable,
    • accprofile-override allow access profile to be overridden from remote auth server type:string choice: enable, disable,
    • sshkey admin user SSH public key type:string
    • force-password-change enable/disable force password change on next login. type:string choice: enable, disable,
    • 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 admin
    fwebos_admin:
     action: add
     name: test1
     access_profile: admin_no_access
     trusthostv4: 0.0.0.0/0
     trusthostv6: ::/0
     domains: root
     type: local-user
     admin_usergrp:
     force_password_change: disable
     password: 11111111

  - name: edit admin
    fwebos_admin:
     action: edit
     name: test1
     access_profile: admin_no_access
     trusthostv4: 0.0.0.0/0
     trusthostv6: ::/0
     domains: root1
     type: remote-user
     admin_usergrp: test

  - name: delete admin
    fwebos_admin:
     action: delete
     name: test1

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.