community.general.packet_sshkey 模块 – 在 Packet 主机中创建/删除 SSH 密钥

注意

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

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

要安装它,请使用:ansible-galaxy collection install community.general。您需要更多要求才能使用此模块,请参阅 要求 以了解详细信息。

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

概要

要求

在执行此模块的主机上需要满足以下要求。

  • packet-python

参数

参数

注释

auth_token

字符串

Packet API 令牌。您也可以在环境变量 PACKET_API_TOKEN 中提供。

fingerprint

字符串

要删除的密钥的指纹。

id

字符串

要删除的密钥的 UUID。

key

字符串

公钥字符串 ({type} {base64 编码的密钥} {描述})。

key_file

路径

包含公钥的文件。

label

别名:name

字符串

密钥的标签。如果将其留空,它将从密钥字符串中读取。

state

字符串

指示目标所需的狀態。

选项

  • "present" ← (默认)

  • "absent"

属性

属性

支持

描述

check_mode

支持:

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

diff_mode

支持:

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

示例

# All the examples assume that you have your Packet API token in env var PACKET_API_TOKEN.
# You can also pass the api token in module param auth_token.

- name: Create sshkey from string
  hosts: localhost
  tasks:
    community.general.packet_sshkey:
      key: "{{ lookup('file', 'my_packet_sshkey.pub') }}"

- name: Create sshkey from file
  hosts: localhost
  tasks:
    community.general.packet_sshkey:
      label: key from file
      key_file: ~/ff.pub

- name: Remove sshkey by id
  hosts: localhost
  tasks:
    community.general.packet_sshkey:
      state: absent
      id: eef49903-7a09-4ca1-af67-4087c29ab5b6

返回值

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

描述

changed

布尔值

如果创建或删除了 SSH 密钥,则为 True。

返回:总是

示例: true

sshkeys

列表 / elements=string

有关已创建/删除的 SSH 密钥的信息。

返回:总是

示例: [{"fingerprint": "5c:93:74:7c:ed:07:17:62:28:75:79:23:d6:08:93:46", "id": "41d61bd8-3342-428b-a09c-e67bdd18a9b7", "key": "ssh-dss AAAAB3NzaC1kc3MAAACBAIfNT5S0ncP4BBJBYNhNPxFF9lqVhfPeu6SM1LoCocxqDc1AT3zFRi8hjIf6TLZ2AA4FYbcAWxLMhiBxZRVldT9GdBXile78kAK5z3bKTwq152DCqpxwwbaTIggLFhsU8wrfBsPWnDuAxZ0h7mmrCjoLIE3CNLDA/NmV3iB8xMThAAAAFQCStcesSgR1adPORzBxTr7hug92LwAAAIBOProm3Gk+HWedLyE8IfofLaOeRnbBRHAOL4z0SexKkVOnQ/LGN/uDIIPGGBDYTvXgKZT+jbHeulRJ2jKgfSpGKN4JxFQ8uzVH492jEiiUJtT72Ss1dCV4PmyERVIw+f54itihV3z/t25dWgowhb0int8iC/OY3cGodlmYb3wdcQAAAIBuLbB45djZXzUkOTzzcRDIRfhaxo5WipbtEM2B1fuBt2gyrvksPpH/LK6xTjdIIb0CxPu4OCxwJG0aOz5kJoRnOWIXQGhH7VowrJhsqhIc8gN9ErbO5ea8b1L76MNcAotmBDeTUiPw01IJ8MdDxfmcsCslJKgoRKSmQpCwXQtN2g== tomk@hp2", "label": "mynewkey33"}]

作者

  • Tomas Karasek (@t0mk)