fortinet.fortios.fortios_user_setting 模块 – 配置 Fortinet 的 FortiOS 和 FortiGate 中的用户身份验证设置。

注意

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

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

要安装它,请使用: ansible-galaxy collection install fortinet.fortios。您需要其他要求才能使用此模块,有关详细信息,请参见 需求

要在剧本中使用它,请指定: fortinet.fortios.fortios_user_setting

fortinet.fortios 2.0.0 中的新增功能

概要

  • 此模块能够通过允许用户设置和修改用户功能和设置类别来配置 FortiGate 或 FortiOS (FOS) 设备。示例包括所有参数和值,需要在使用前调整到数据源。已在 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"

user_setting

字典

配置用户身份验证设置。

auth_blackout_time

整数

IP 地址在在一分钟内五次身份验证失败后被拒绝访问的时间(以秒为单位)。

auth_ca_cert

字符串

策略身份验证的 HTTPS CA 证书。来源 vpn.certificate.local.name。

auth_cert

字符串

策略身份验证的 HTTPS 服务器证书。来源 vpn.certificate.local.name。

auth_http_basic

字符串

启用/禁用对基于身份的防火墙策略使用 HTTP 基本身份验证。

选项

  • "enable"

  • "disable"

auth_invalid_max

整数

用户被阻止之前的最大身份验证失败尝试次数。

auth_lockout_duration

整数

登录失败过多后的锁定时间(以秒为单位)。

auth_lockout_threshold

整数

触发登录锁定之前的最大登录失败尝试次数。

auth_on_demand

字符串

始终/隐式地按需触发防火墙身份验证。

选项

  • "always"

  • "implicitly"

auth_portal_timeout

整数

受限门户用户必须重新进行身份验证之前的时间(分钟)(1-30 分钟)。

auth_ports

列表 / 元素=字典

为使用 HTTP、HTTPS、FTP 和 TELNET 进行身份验证设置非标准端口。

id

整数 / 必需

ID。参见 注释

port

整数

防火墙用户身份验证的非标准端口。

type

字符串

服务类型。

选项

  • "http"

  • "https"

  • "ftp"

  • "telnet"

auth_secure_http

字符串

启用/禁用将 HTTP 用户身份验证重定向到更安全的 HTTPS。

选项

  • "enable"

  • "disable"

auth_src_mac

字符串

启用/禁用用户身份的源 MAC 地址。

选项

  • "enable"

  • "disable"

auth_ssl_allow_renegotiation

字符串

允许/禁止 HTTPS 身份验证的 SSL 重新协商。

选项

  • "enable"

  • "disable"

auth_ssl_max_proto_version

字符串

SSL/TLS 连接支持的最大协议版本。

选项

  • "sslv3"

  • "tlsv1"

  • "tlsv1-1"

  • "tlsv1-2"

  • "tlsv1-3"

auth_ssl_min_proto_version

字符串

SSL/TLS 连接支持的最小协议版本。

选项

  • "default"

  • "SSLv3"

  • "TLSv1"

  • "TLSv1-1"

  • "TLSv1-2"

  • "TLSv1-3"

auth_ssl_sigalgs

字符串

设置与 HTTPS 身份验证相关的签名算法(仅影响 TLS 版本 <= 1.2)。

选项

  • "no-rsa-pss"

  • "all"

auth_timeout

整数

防火墙用户身份验证超时之前的时间(分钟),需要用户重新进行身份验证。

auth_timeout_type

字符串

控制经过身份验证的用户在硬超时、空闲超时或会话超时后是否必须再次登录。

选项

  • "idle-timeout"

  • "hard-timeout"

  • "new-session"

auth_type

列表 / 元素=字符串

支持的防火墙策略身份验证协议/方法。

选项

  • "http"

  • "https"

  • "ftp"

  • "telnet"

default_user_password_policy

字符串

除非另有说明,否则应用于所有本地用户的默认密码策略,如 config user password-policy 中所定义。来源用户 .password-policy.name。

per_policy_disclaimer

字符串

启用/禁用每个策略的免责声明。

选项

  • "enable"

  • "disable"

radius_ses_timeout_act

字符串

将RADIUS会话超时设置为硬超时,或忽略RADIUS服务器会话超时。

选项

  • "hard-timeout"

  • "忽略超时"

vdom

字符串

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

默认值: "root"

备注

注意

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

示例

- name: Configure user authentication setting.
  fortinet.fortios.fortios_user_setting:
      vdom: "{{ vdom }}"
      user_setting:
          auth_blackout_time: "0"
          auth_ca_cert: "<your_own_value> (source vpn.certificate.local.name)"
          auth_cert: "<your_own_value> (source vpn.certificate.local.name)"
          auth_http_basic: "enable"
          auth_invalid_max: "5"
          auth_lockout_duration: "0"
          auth_lockout_threshold: "3"
          auth_on_demand: "always"
          auth_portal_timeout: "3"
          auth_ports:
              -
                  id: "13"
                  port: "1024"
                  type: "http"
          auth_secure_http: "enable"
          auth_src_mac: "enable"
          auth_ssl_allow_renegotiation: "enable"
          auth_ssl_max_proto_version: "sslv3"
          auth_ssl_min_proto_version: "default"
          auth_ssl_sigalgs: "no-rsa-pss"
          auth_timeout: "5"
          auth_timeout_type: "idle-timeout"
          auth_type: "http"
          default_user_password_policy: "<your_own_value> (source user.password-policy.name)"
          per_policy_disclaimer: "enable"
          radius_ses_timeout_act: "hard-timeout"

返回值

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

描述

build

字符串

FortiGate镜像的版本号。

返回值: 始终返回

示例: "1547"

http_method

字符串

最后用于将内容置备到 FortiGate 的方法。

返回值: 始终返回

示例: "PUT"

http_status

字符串

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

返回值: 始终返回

示例: "200"

mkey

字符串

在最后一次调用 FortiGate 时使用的主密钥 (ID)。

返回值: 成功

示例: "id"

name

字符串

用于完成请求的表的名称。

返回值: 始终返回

示例: "urlfilter"

path

字符串

用于完成请求的表的路径。

返回值: 始终返回

示例: "webfilter"

revision

字符串

内部修订号。

返回值: 始终返回

示例: "17.0.2.10658"

serial

字符串

设备的序列号。

返回值: 始终返回

示例: "FGVMEVYYQT3AB5352"

status

字符串

操作结果的指示。

返回值: 始终返回

示例: "success"

vdom

字符串

使用的虚拟域。

返回值: 始终返回

示例: "root"

version

字符串

FortiGate 的版本。

返回值: 始终返回

示例: "v5.6.3"

作者

  • 郑链 (@chillancezen)

  • 薛杰 (@JieX19)

  • 卢洪宾 (@fgtdev-hblu)

  • 沈方 (@frankshen01)

  • Miguel Angel Munoz (@mamunozgonzalez)

  • Nicolas Thomas (@thomnico)