community.general.keyring module – Set or delete a passphrase using the Operating System’s native keyring

Note

This module is part of the community.general collection (version 9.4.0).

It is not included in ansible-core. To check whether it is installed, run ansible-galaxy collection list.

To install it, use: ansible-galaxy collection install community.general. You need further requirements to be able to use this module, see Requirements for details.

To use it in a playbook, specify: community.general.keyring.

New in community.general 5.2.0

Synopsis

  • This module uses the keyring Python library to set or delete passphrases for a given service and username from the OS’ native keyring.

Requirements

The below requirements are needed on the host that executes this module.

  • keyring (Python library)

  • gnome-keyring (application - required for headless Gnome keyring access)

  • dbus-run-session (application - required for headless Gnome keyring access)

Parameters

Parameter

Comments

keyring_password

string / required

Password to unlock keyring.

service

string / required

The name of the service.

state

string

Whether the password should exist.

Choices:

  • "present" ← (default)

  • "absent"

user_password

aliases: password

string

The password to set.

username

string / required

The user belonging to the service.

Attributes

Attribute

Support

Description

check_mode

Support: full

Can run in check_mode and return changed status prediction without modifying target.

diff_mode

Support: none

Will return details on what has changed (or possibly needs changing in check_mode), when in diff mode.

Examples

- name: Set a password for test/test1
  community.general.keyring:
    service: test
    username: test1
    user_password: "{{ user_password }}"
    keyring_password: "{{ keyring_password }}"

- name: Delete the password for test/test1
  community.general.keyring:
    service: test
    username: test1
    user_password: "{{ user_password }}"
    keyring_password: "{{ keyring_password }}"
    state: absent

Authors

  • Alexander Hussey (@ahussey-redhat)