community.general.ipa_pwpolicy – Manage FreeIPA password policies
Note
This plugin is part of the community.general collection (version 3.8.3).
You might already have this collection installed if you are using the ansible
package.
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
.
To use it in a playbook, specify: community.general.ipa_pwpolicy
.
New in version 2.0.0: of community.general
Parameters
Parameter |
Comments |
---|---|
Period (in seconds) after which the number of failed login attempts is reset. |
|
Name of the group that the policy applies to. If omitted, the global policy is used. |
|
Number of previous passwords that are remembered. Users cannot reuse remembered passwords. |
|
IP or hostname of IPA server. If the value is not specified in the task, the value of environment variable If both the environment variable The relevant entry needed in FreeIPA is the ‘ipa-ca’ entry. If neither the DNS entry, nor the environment Environment variable fallback mechanism is added in Ansible 2.5. Default: “ipa.example.com” |
|
Password of administrative user. If the value is not specified in the task, the value of environment variable Note that if the ‘urllib_gssapi’ library is available, it is possible to use GSSAPI to authenticate to FreeIPA. If the environment variable If the environment variable If GSSAPI is not available, the usage of ‘ipa_pass’ is required. Environment variable fallback mechanism is added in Ansible 2.5. |
|
Port of FreeIPA / IPA server. If the value is not specified in the task, the value of environment variable If both the environment variable Environment variable fallback mechanism is added in Ansible 2.5. Default: 443 |
|
Protocol used by IPA server. If the value is not specified in the task, the value of environment variable If both the environment variable Environment variable fallback mechanism is added in Ansible 2.5. Choices:
|
|
Specifies idle timeout (in seconds) for the connection. For bulk operations, you may want to increase this in order to avoid timeout from IPA server. If the value is not specified in the task, the value of environment variable If both the environment variable Default: 10 |
|
Administrative account used on IPA server. If the value is not specified in the task, the value of environment variable If both the environment variable Environment variable fallback mechanism is added in Ansible 2.5. Default: “admin” |
|
Period (in seconds) for which users are locked out. |
|
Maximum number of consecutive failures before lockout. |
|
Maximum password lifetime (in days). |
|
Minimum number of character classes. |
|
Minimum password length. |
|
Minimum password lifetime (in hours). |
|
Priority of the policy. High number means lower priority. Required when |
|
State to ensure. Choices:
|
|
This only applies if If set to This should only set to Choices:
|
Examples
- name: Modify the global password policy
community.general.ipa_pwpolicy:
maxpwdlife: '90'
minpwdlife: '1'
historylength: '8'
minclasses: '3'
minlength: '16'
maxfailcount: '6'
failinterval: '60'
lockouttime: '600'
ipa_host: ipa.example.com
ipa_user: admin
ipa_pass: topsecret
- name: Ensure the password policy for the group admins is present
community.general.ipa_pwpolicy:
group: admins
state: present
maxpwdlife: '60'
minpwdlife: '24'
historylength: '16'
minclasses: '4'
priority: '10'
maxfailcount: '4'
failinterval: '600'
lockouttime: '1200'
ipa_host: ipa.example.com
ipa_user: admin
ipa_pass: topsecret
- name: Ensure that the group sysops does not have a unique password policy
community.general.ipa_pwpolicy:
group: sysops
state: absent
ipa_host: ipa.example.com
ipa_user: admin
ipa_pass: topsecret
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
Password policy as returned by IPA API. Returned: always Sample: {“cn”: [“admins”], “cospriority”: [“10”], “dn”: “cn=admins,cn=EXAMPLE.COM,cn=kerberos,dc=example,dc=com”, “krbmaxpwdlife”: [“60”], “krbminpwdlife”: [“24”], “krbpwdfailurecountinterval”: [“600”], “krbpwdhistorylength”: [“16”], “krbpwdlockoutduration”: [“1200”], “krbpwdmaxfailure”: [“4”], “krbpwdmindiffchars”: [“4”], “objectclass”: [“top”, “nscontainer”, “krbpwdpolicy”]} |
Authors
Adralioh (@adralioh)