fortinet.fortios.fortios_user_nac_policy (1.1.7) — module

Configure NAC policy matching pattern to identify matching NAC devices in Fortinet's FortiOS and FortiGate.

| "added in version" 2.10 of fortinet.fortios"

Authors: Link Zheng (@chillancezen), Jie Xue (@JieX19), Hongbin Lu (@fgtdev-hblu), Frank Shen (@frankshen01), Miguel Angel Munoz (@mamunozgonzalez), Nicolas Thomas (@thomnico)

preview | supported by community

Install collection

Install with ansible-galaxy collection install fortinet.fortios:==1.1.7


Add to requirements.yml

  collections:
    - name: fortinet.fortios
      version: 1.1.7

Description

This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify user feature and nac_policy category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.4.0


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- hosts: fortigates
  collections:
    - fortinet.fortios
  connection: httpapi
  vars:
   vdom: "root"
   ansible_httpapi_use_ssl: yes
   ansible_httpapi_validate_certs: no
   ansible_httpapi_port: 443
  tasks:
  - name: Configure NAC policy matching pattern to identify matching NAC devices.
    fortios_user_nac_policy:
      vdom:  "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      user_nac_policy:
        category: "device"
        description: "<your_own_value>"
        family: "<your_own_value>"
        host: "myhostname"
        hw_vendor: "<your_own_value>"
        hw_version: "<your_own_value>"
        mac: "<your_own_value>"
        name: "default_name_10"
        os: "<your_own_value>"
        src: "<your_own_value>"
        status: "enable"
        sw_version: "<your_own_value>"
        switch_auto_auth: "global"
        switch_fortilink: "<your_own_value> (source system.interface.name)"
        switch_mac_policy: "<your_own_value> (source switch-controller.mac-policy.name)"
        switch_port_policy: "<your_own_value> (source switch-controller.port-policy.name)"
        switch_scope:
         -
            switch_id: "<your_own_value> (source switch-controller.managed-switch.switch-id)"
        type: "<your_own_value>"
        user: "<your_own_value>"
        user_group: "<your_own_value> (source user.group.name)"

Inputs

    
vdom:
    default: root
    description:
    - Virtual domain, among those defined previously. A vdom is a virtual instance of
      the FortiGate that can be configured and used as a different unit.
    type: str

state:
    choices:
    - present
    - absent
    description:
    - Indicates whether to create or remove the object.
    required: true
    type: str

access_token:
    description:
    - Token-based authentication. Generated from GUI of Fortigate.
    required: false
    type: str

user_nac_policy:
    default: null
    description:
    - Configure NAC policy matching pattern to identify matching NAC devices.
    suboptions:
      category:
        choices:
        - device
        - firewall-user
        description:
        - Category of NAC policy.
        type: str
      description:
        description:
        - Description for the NAC policy matching pattern.
        type: str
      family:
        description:
        - NAC policy matching family.
        type: str
      host:
        description:
        - NAC policy matching host.
        type: str
      hw_vendor:
        description:
        - NAC policy matching hardware vendor.
        type: str
      hw_version:
        description:
        - NAC policy matching hardware version.
        type: str
      mac:
        description:
        - NAC policy matching MAC address.
        type: str
      name:
        description:
        - NAC policy name.
        required: true
        type: str
      os:
        description:
        - NAC policy matching operating system.
        type: str
      src:
        description:
        - NAC policy matching source.
        type: str
      status:
        choices:
        - enable
        - disable
        description:
        - Enable/disable NAC policy.
        type: str
      sw_version:
        description:
        - NAC policy matching software version.
        type: str
      switch_auto_auth:
        choices:
        - global
        - disable
        - enable
        description:
        - NAC device auto authorization when discovered and nac-policy matched.
        type: str
      switch_fortilink:
        description:
        - FortiLink interface for which this NAC policy belongs to. Source system.interface.name.
        type: str
      switch_mac_policy:
        description:
        - switch-mac-policy to be applied on the matched NAC policy. Source switch-controller.mac-policy.name.
        type: str
      switch_port_policy:
        description:
        - switch-port-policy to be applied on the matched NAC policy. Source switch-controller.port-policy.name.
        type: str
      switch_scope:
        description:
        - List of managed FortiSwitches on which NAC policy can be applied.
        suboptions:
          switch_id:
            description:
            - Managed FortiSwitch name from available options. Source switch-controller.managed-switch.switch-id.
            type: str
        type: list
      type:
        description:
        - NAC policy matching type.
        type: str
      user:
        description:
        - NAC policy matching user.
        type: str
      user_group:
        description:
        - NAC policy matching user group. Source user.group.name.
        type: str
    type: dict

Outputs

build:
  description: Build number of the fortigate image
  returned: always
  sample: '1547'
  type: str
http_method:
  description: Last method used to provision the content into FortiGate
  returned: always
  sample: PUT
  type: str
http_status:
  description: Last result given by FortiGate on last operation applied
  returned: always
  sample: '200'
  type: str
mkey:
  description: Master key (id) used in the last call to FortiGate
  returned: success
  sample: id
  type: str
name:
  description: Name of the table used to fulfill the request
  returned: always
  sample: urlfilter
  type: str
path:
  description: Path of the table used to fulfill the request
  returned: always
  sample: webfilter
  type: str
revision:
  description: Internal revision number
  returned: always
  sample: 17.0.2.10658
  type: str
serial:
  description: Serial number of the unit
  returned: always
  sample: FGVMEVYYQT3AB5352
  type: str
status:
  description: Indication of the operation's result
  returned: always
  sample: success
  type: str
vdom:
  description: Virtual domain used
  returned: always
  sample: root
  type: str
version:
  description: Version of the FortiGate
  returned: always
  sample: v5.6.3
  type: str