community.general.ipa_otptoken 模块 – 管理 FreeIPA OTPs

注意

此模块是 community.general 集合(版本 10.1.0)的一部分。

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

要安装它,请使用:ansible-galaxy collection install community.general

要在 playbook 中使用它,请指定:community.general.ipa_otptoken

community.general 2.5.0 中的新增功能

概要

  • 在 IPA 中添加、修改和删除一次性密码。

参数

参数

注释

algorithm

字符串

令牌哈希算法。

注意:OTP 创建后无法修改。

选择

  • "sha1"

  • "sha256"

  • "sha384"

  • "sha512"

counter

整数

HOTP 令牌的初始计数器。

注意:OTP 创建后无法修改。

description

字符串

令牌的描述(仅供参考)。

digits

整数

每个令牌代码将具有的位数。

注意:OTP 创建后无法修改。

选择

  • 6

  • 8

enabled

布尔值

将令牌标记为启用(默认为 true)。

选择

  • false

  • true ← (默认)

interval

整数

TOTP 令牌代码有效期的长度(以秒为单位)。

注意:OTP 创建后无法修改。

ipa_host

字符串

IPA 服务器的 IP 或主机名。

如果任务中未指定该值,则将使用环境变量 IPA_HOST 的值。

如果任务中既未指定环境变量 IPA_HOST,也未指定该值,则将使用 DNS 尝试发现 FreeIPA 服务器。

FreeIPA 中需要的相关条目是 ipa-ca 条目。

如果 DNS 条目、环境变量 IPA_HOST 或该值在任务中均不可用,则将使用默认值。

默认值: "ipa.example.com"

ipa_pass

字符串

管理用户的密码。

如果任务中未指定该值,则将使用环境变量 IPA_PASS 的值。

请注意,如果 urllib_gssapi 库可用,则可以使用 GSSAPI 对 FreeIPA 进行身份验证。

如果环境变量 KRB5CCNAME 可用,则模块将使用此 Kerberos 凭据缓存对 FreeIPA 服务器进行身份验证。

如果环境变量 KRB5_CLIENT_KTNAME 可用,并且 KRB5CCNAME 不可用,则模块将使用此 Kerberos 密钥表进行身份验证。

如果 GSSAPI 不可用,则必须使用 ipa_pass

ipa_port

整数

FreeIPA / IPA 服务器的端口。

如果任务中未指定该值,则将使用环境变量 IPA_PORT 的值。

如果任务中既未指定环境变量 IPA_PORT,也未指定该值,则将设置默认值。

默认值: 443

ipa_prot

字符串

IPA 服务器使用的协议。

如果任务中未指定该值,则将使用环境变量 IPA_PROT 的值。

如果任务中既未指定环境变量 IPA_PROT,也未指定该值,则将设置默认值。

选择

  • "http"

  • "https" ← (默认)

ipa_timeout

整数

指定连接的空闲超时时间(以秒为单位)。

对于批量操作,您可能需要增加此值,以避免来自 IPA 服务器的超时。

如果任务中未指定该值,则将使用环境变量 IPA_TIMEOUT 的值。

如果任务中既未指定环境变量 IPA_TIMEOUT,也未指定该值,则将设置默认值。

默认值: 10

ipa_user

字符串

IPA 服务器上使用的管理帐户。

如果任务中未指定该值,则将使用环境变量 IPA_USER 的值。

如果任务中既未指定环境变量 IPA_USER,也未指定该值,则将设置默认值。

默认值: "admin"

model

字符串

令牌模型(仅供参考)。

newuniqueid

字符串

如果指定,则将指定的唯一 ID 更改为此 ID。

notafter

字符串

令牌可使用的最后日期/时间。

格式为 YYYYMMddHHmmss

例如,20200121182022 将允许令牌使用到 2020 年 1 月 21 日 18:20:22。

notbefore

字符串

令牌可使用的最早日期/时间。

格式为 YYYYMMddHHmmss

例如,20180121182022 将允许令牌从 2018 年 1 月 21 日 18:20:22 开始使用。

offset

整数

TOTP 令牌 / IPA 服务器时间差。

注意:OTP 创建后无法修改。

otptype

字符串

OTP 的类型。

注意:OTP 创建后无法修改。

选择

  • "totp"

  • "hotp"

owner

字符串

令牌的指定用户。

secretkey

字符串

令牌密钥 (Base64)。

如果创建了 OTP 并且未指定此项,则 IPA 将生成一个随机密钥。

注意:OTP 创建后无法修改。

serial

字符串

令牌序列号(仅供参考)。

state

字符串

要确保的状态。

选择

  • "present" ← (默认)

  • "absent"

uniqueid

别名: name

字符串 / 必需

令牌在 IPA 中的唯一 ID。

validate_certs

布尔值

这仅在 ipa_prothttps 时适用。

如果设置为 false,则不会验证 SSL 证书。

此项仅应在个人控制的、使用自签名证书的站点上设置为 false

选择

  • false

  • true ← (默认)

vendor

字符串

令牌供应商名称(仅供参考)。

属性

属性

支持

描述

check_mode

支持:完整

可以在 check_mode 中运行并返回更改状态预测,而无需修改目标。

diff_mode

支持:

在 diff 模式下,将返回已更改(或可能需要在 check_mode 中更改)的详细信息。

示例

- name: Create a totp for pinky, allowing the IPA server to generate using defaults
  community.general.ipa_otptoken:
    uniqueid: Token123
    otptype: totp
    owner: pinky
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Create a 8 digit hotp for pinky with sha256 with specified validity times
  community.general.ipa_otptoken:
    uniqueid: Token123
    enabled: true
    otptype: hotp
    digits: 8
    secretkey: UMKSIER00zT2T2tWMUlTRmNlekRCbFQvWFBVZUh2dElHWGR6T3VUR3IzK2xjaFk9
    algorithm: sha256
    notbefore: 20180121182123
    notafter: 20220121182123
    owner: pinky
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Update Token123 to indicate a vendor, model, serial number (info only), and description
  community.general.ipa_otptoken:
    uniqueid: Token123
    vendor: Acme
    model: acme101
    serial: SerialNumber1
    description: Acme OTP device
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Disable Token123
  community.general.ipa_otptoken:
    uniqueid: Token123
    enabled: false
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

- name: Rename Token123 to TokenABC and enable it
  community.general.ipa_otptoken:
    uniqueid: Token123
    newuniqueid: TokenABC
    enabled: true
    ipa_host: ipa.example.com
    ipa_user: admin
    ipa_pass: topsecret

返回值

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

描述

otptoken

字典

IPA API 返回的 OTP 令牌

返回:始终

作者

  • justchris1 (@justchris1)