fortinet.fortios.fortios_user_nac_policy 模块 – 配置NAC策略匹配模式,以便在Fortinet的FortiOS和FortiGate中识别匹配的NAC设备。

注意

此模块是 fortinet.fortios 集合 (版本 2.3.8) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用: ansible-galaxy collection install fortinet.fortios。您需要其他要求才能使用此模块,请参阅 要求 了解详情。

要在playbook中使用它,请指定: fortinet.fortios.fortios_user_nac_policy

fortinet.fortios 2.0.0中的新功能

概要

  • 此模块能够配置FortiGate或FortiOS (FOS) 设备,允许用户设置和修改用户功能和nac_policy类别。示例包括所有参数,在使用前需要将值调整到数据源。已在FOS v6.0.0上测试。

要求

执行此模块的主机需要以下要求。

  • ansible>=2.15

参数

参数

注释

access_token

字符串

基于令牌的身份验证。从FortiGate的GUI生成。

enable_log

布尔值

启用/禁用任务的日志记录。

选项

  • false ← (默认)

  • true

member_path

字符串

要操作的成员属性路径。

如果有多个属性,则用斜杠字符分隔。

标有member_path的参数对于执行成员操作是合法的。

member_state

字符串

在指定的属性路径下添加或删除成员。

指定member_state时,将忽略state选项。

选项

  • "present"

  • "absent"

state

字符串 / 必需

指示是创建还是删除对象。

选项

  • "present"

  • "absent"

user_nac_policy

字典

配置NAC策略匹配模式以识别匹配的NAC设备。

category

字符串

NAC策略的类别。

选项

  • "device"

  • "firewall-user"

  • "ems-tag"

  • "fortivoice-tag"

  • "vulnerability"

description

字符串

NAC策略匹配模式的描述。

ems_tag

字符串

NAC策略匹配EMS标签。来源firewall.address.name。

family

字符串

NAC策略匹配族。

firewall_address

字符串

要关联匹配此策略的MAC的动态防火墙地址。来源firewall.address.name。

fortivoice_tag

字符串

NAC策略匹配FortiVoice标签。来源firewall.address.name。

host

字符串

NAC策略匹配主机。

hw_vendor

字符串

NAC策略匹配硬件厂商。

hw_version

字符串

NAC策略匹配硬件版本。

mac

字符串

NAC策略匹配MAC地址。

match_period

整数

匹配的设备将保留的天数(0 - 始终保留)

match_type

字符串

根据类型匹配和保留设备。

选项

  • "dynamic"

  • "override"

name

字符串 / 必需

NAC策略名称。

os

字符串

NAC策略匹配操作系统。

severity

列表 / 元素=字典

NAC策略匹配设备漏洞严重性列表。

severity_num

整数 / 必需

输入多个严重级别,其中0 = 信息,1 = 低,…,4 = 严重,请参见备注

src

字符串

NAC策略匹配源。

ssid_policy

字符串

要应用于匹配的NAC策略的SSID策略。来源wireless-controller.ssid-policy.name。

status

字符串

启用/禁用NAC策略。

选项

  • "enable"

  • "disable"

sw_version

字符串

NAC策略匹配软件版本。

switch_auto_auth

字符串

发现并匹配nac策略时,NAC设备自动授权。

选项

  • "global"

  • "disable"

  • "enable"

字符串

此NAC策略所属的FortiLink接口。来源system.interface.name。

switch_group

列表 / 元素=字典

可以应用NAC策略的已管理FortiSwitch组列表。

name

字符串 / 必需

来自可用选项的已管理FortiSwitch组名称。来源switch-controller.switch-group.name。

switch_mac_policy

字符串

要应用于匹配的NAC策略的交换机MAC策略操作。来源switch-controller.mac-policy.name。

switch_port_policy

字符串

要应用于匹配的NAC策略的交换机端口策略。来源switch-controller.port-policy.name。

switch_scope

列表 / 元素=字典

可以应用NAC策略的已管理FortiSwitch列表。

switch_id

字符串 / 必需

来自可用选项的已管理FortiSwitch名称。来源switch-controller.managed-switch.switch-id。

type

字符串

NAC策略匹配类型。

user

字符串

NAC策略匹配用户。

user_group

字符串

NAC策略匹配用户组。来源user.group.name。

vdom

字符串

虚拟域,在先前定义的虚拟域中。vdom是FortiGate的虚拟实例,可以将其配置并用作不同的单元。

默认值: "root"

备注

注意

  • 旧版fortiosapi已弃用,httpapi是运行playbook的首选方法。

  • 此模块支持check_mode。

示例

- name: Configure NAC policy matching pattern to identify matching NAC devices.
  fortinet.fortios.fortios_user_nac_policy:
      vdom: "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      user_nac_policy:
          category: "device"
          description: "<your_own_value>"
          ems_tag: "<your_own_value> (source firewall.address.name)"
          family: "<your_own_value>"
          firewall_address: "<your_own_value> (source firewall.address.name)"
          fortivoice_tag: "<your_own_value> (source firewall.address.name)"
          host: "myhostname"
          hw_vendor: "<your_own_value>"
          hw_version: "<your_own_value>"
          mac: "<your_own_value>"
          match_period: "0"
          match_type: "dynamic"
          name: "default_name_15"
          os: "<your_own_value>"
          severity:
              -
                  severity_num: "<you_own_value>"
          src: "<your_own_value>"
          ssid_policy: "<your_own_value> (source wireless-controller.ssid-policy.name)"
          status: "enable"
          sw_version: "<your_own_value>"
          switch_auto_auth: "global"
          switch_fortilink: "<your_own_value> (source system.interface.name)"
          switch_group:
              -
                  name: "default_name_26 (source switch-controller.switch-group.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)"

返回值

常见返回值已在此处记录,以下是此模块特有的字段

描述

build

字符串

FortiGate镜像的版本号

返回:始终

示例: "1547"

http_method

字符串

上次用于将内容置备到FortiGate的方法

返回:始终

示例: "PUT"

http_status

字符串

FortiGate在上次应用的操作中给出的最后结果

返回:始终

示例: "200"

mkey

字符串

上次调用FortiGate时使用的主密钥(ID)

返回:成功

示例: "id"

name

字符串

用于完成请求的表名称

返回:始终

示例: "urlfilter"

路径

字符串

用于完成请求的表路径

返回:始终

示例: "webfilter"

版本号

字符串

内部版本号

返回:始终

示例: "17.0.2.10658"

序列号

字符串

设备的序列号

返回:始终

示例: "FGVMEVYYQT3AB5352"

status

字符串

操作结果指示

返回:始终

示例: "success"

vdom

字符串

使用的虚拟域

返回:始终

示例: "root"

版本

字符串

FortiGate 的版本

返回:始终

示例: "v5.6.3"

作者

  • 郑琳 (@chillancezen)

  • 薛杰 (@JieX19)

  • 陆洪滨 (@fgtdev-hblu)

  • 沈方 (@frankshen01)

  • Miguel Angel Munoz (@mamunozgonzalez)

  • Nicolas Thomas (@thomnico)