Blame README-config.md

Packit Service 0a38ef
Config module
Packit Service 0a38ef
===========
Packit Service 0a38ef
Packit Service 0a38ef
Description
Packit Service 0a38ef
-----------
Packit Service 0a38ef
Packit Service 0a38ef
The config module allows the setting of global config parameters within IPA. If no parameters are specified it returns the list of all current parameters.
Packit Service 0a38ef
Packit Service 0a38ef
The config module is as compatible as possible to the Ansible upstream `ipa_config` module, but adds many additional parameters
Packit Service 0a38ef
Packit Service 0a38ef
Packit Service 0a38ef
Features
Packit Service 0a38ef
--------
Packit Service 0a38ef
* IPA server configuration management
Packit Service 0a38ef
Packit Service 0a38ef
Packit Service 0a38ef
Supported FreeIPA Versions
Packit Service 0a38ef
--------------------------
Packit Service 0a38ef
Packit Service 0a38ef
FreeIPA versions 4.4.0 and up are supported by the ipaconfig module.
Packit Service 0a38ef
Packit Service 0a38ef
Packit Service 0a38ef
Requirements
Packit Service 0a38ef
------------
Packit Service 0a38ef
Packit Service 0a38ef
**Controller**
Packit Service 0a38ef
* Ansible version: 2.8+
Packit Service 0a38ef
Packit Service 0a38ef
**Node**
Packit Service 0a38ef
* Supported FreeIPA version (see above)
Packit Service 0a38ef
Packit Service 0a38ef
Packit Service 0a38ef
Usage
Packit Service 0a38ef
=====
Packit Service 0a38ef
Packit Service 0a38ef
Example inventory file
Packit Service 0a38ef
Packit Service 0a38ef
```ini
Packit Service 0a38ef
[ipaserver]
Packit Service 0a38ef
ipaserver.test.local
Packit Service 0a38ef
```
Packit Service 0a38ef
Packit Service 0a38ef
Packit Service 0a38ef
Example playbook to read config options:
Packit Service 0a38ef
Packit Service 0a38ef
```yaml
Packit Service 0a38ef
---
Packit Service 0a38ef
- name: Playbook to handle global config options
Packit Service 0a38ef
  hosts: ipaserver
Packit Service 0a38ef
  become: true
Packit Service 0a38ef
  tasks:
Packit Service 0a38ef
    - name: return current values of the global configuration options
Packit Service 0a38ef
      ipaconfig:
Packit Service 0a38ef
        ipaadmin_password: password
Packit Service 0a38ef
      register: result
Packit Service 0a38ef
    - name: display default login shell
Packit Service 0a38ef
      debug:
Packit Service 0a38ef
        msg: '{{result.config.defaultlogin }}'
Packit Service 0a38ef
Packit Service 0a38ef
    - name: ensure defaultloginshell and maxusernamelength are set as required
Packit Service 0a38ef
      ipaconfig:
Packit Service 0a38ef
        ipaadmin_password: password
Packit Service 0a38ef
        defaultlogin: /bin/bash
Packit Service 0a38ef
        maxusername: 64
Packit Service 0a38ef
```
Packit Service 0a38ef
Packit Service 0a38ef
```yaml
Packit Service 0a38ef
---
Packit Service 0a38ef
- name: Playbook to ensure some config options are set
Packit Service 0a38ef
  hosts: ipaserver
Packit Service 0a38ef
  become: true
Packit Service 0a38ef
  tasks:
Packit Service 0a38ef
    - name: set defaultlogin and maxusername
Packit Service 0a38ef
      ipaconfig:
Packit Service 0a38ef
        ipaadmin_password: password
Packit Service 0a38ef
        defaultlogin: /bin/bash
Packit Service 0a38ef
        maxusername: 64
Packit Service 0a38ef
```
Packit Service 0a38ef
Packit Service 0a38ef
Packit Service 0a38ef
Variables
Packit Service 0a38ef
=========
Packit Service 0a38ef
Packit Service 0a38ef
ipauser
Packit Service 0a38ef
-------
Packit Service 0a38ef
Packit Service 0a38ef
**General Variables:**
Packit Service 0a38ef
Packit Service 0a38ef
Variable | Description | Required
Packit Service 0a38ef
-------- | ----------- | --------
Packit Service 0a38ef
`ipaadmin_principal` | The admin principal is a string and defaults to `admin` | no
Packit Service 0a38ef
`ipaadmin_password` | The admin password is a string and is required if there is no admin ticket available on the node | no
Packit Service 0a38ef
`maxusername` \| `ipamaxusernamelength` |  Set the maximum username length (1 to 255) | no
Packit Service 0a38ef
`maxhostname` \| `ipamaxhostnamelength` |  Set the maximum hostname length between 64-255 | no
Packit Service 0a38ef
`homedirectory` \| `ipahomesrootdir` |  Set the default location of home directories | no
Packit Service 0a38ef
`defaultshell` \| `ipadefaultloginshell` |  Set the default shell for new users | no
Packit Service 0a38ef
`defaultgroup` \| `ipadefaultprimarygroup` |  Set the default group for new users | no
Packit Service 0a38ef
`emaildomain`\| `ipadefaultemaildomain`  |  Set the default e-mail domain | false
Packit Service 0a38ef
`searchtimelimit` \| `ipasearchtimelimit` |  Set maximum amount of time (seconds) for a search -1 to 2147483647 (-1 or 0 is unlimited) | no
Packit Service 0a38ef
`searchrecordslimit` \| `ipasearchrecordslimit` |  Set maximum number of records to search -1 to 2147483647 (-1 or 0 is unlimited) | no
Packit Service 0a38ef
`usersearch` \| `ipausersearchfields` |  Set list of fields to search when searching for users | no
Packit Service 0a38ef
`groupsearch` \| `ipagroupsearchfields` |  Set list of fields to search in when searching for groups | no
Packit Service 0a38ef
`enable_migration` \| `ipamigrationenabled` |  Enable migration mode (choices: True, False ) | no
Packit Service 0a38ef
`groupobjectclasses` \| `ipagroupobjectclasses` |  Set default group objectclasses (list) | no
Packit Service 0a38ef
`userobjectclasses` \| `ipauserobjectclasses` |  Set default user objectclasses (list) | no
Packit Service 0a38ef
`pwdexpnotify` \| `ipapwdexpadvnotify` |  Set number of days's notice of impending password expiration (0 to 2147483647) | no
Packit Service 0a38ef
`configstring` \| `ipaconfigstring` |  Set extra hashes to generate in password plug-in (choices:`AllowNThash`, `KDC:Disable Last Success`, `KDC:Disable Lockout`, `KDC:Disable Default Preauth for SPNs`). Use `""` to clear this variable. | no
Packit Service 0a38ef
`selinuxusermaporder` \| `ipaselinuxusermaporder`| Set ordered list in increasing priority of SELinux users | no
Packit Service 0a38ef
`selinuxusermapdefault`\| `ipaselinuxusermapdefault` |  Set default SELinux user when no match is found in SELinux map rule | no
Packit Service 0a38ef
`pac_type` \| `ipakrbauthzdata` |  set default types of PAC supported for services (choices: `MS-PAC`, `PAD`, `nfs:NONE`). Use `""` to clear this variable. | no
Packit Service 0a38ef
`user_auth_type` \| `ipauserauthtype` |  set default types of supported user authentication (choices: `password`, `radius`, `otp`, `disabled`). Use `""` to clear this variable. | no
Packit Service 0a38ef
`domain_resolution_order` \| `ipadomainresolutionorder` | Set list of domains used for short name qualification | no
Packit Service 0a38ef
`ca_renewal_master_server` \| `ipacarenewalmasterserver`| Renewal master for IPA certificate authority. | no
Packit Service 0a38ef
Packit Service 0a38ef
Packit Service 0a38ef
Return Values
Packit Service 0a38ef
=============
Packit Service 0a38ef
Packit Service 0a38ef
Variable | Description | Returned When
Packit Service 0a38ef
-------- | ----------- | -------------
Packit Service 0a38ef
`config` | config dict 
Fields: | No values to configure are specified
Packit Service 0a38ef
  | `maxusername` |  
Packit Service 0a38ef
  | `maxhostname` |  
Packit Service 0a38ef
  | `homedirectory` |  
Packit Service 0a38ef
  | `defaultshell` |  
Packit Service 0a38ef
  | `defaultgroup` |  
Packit Service 0a38ef
  | `emaildomain` |  
Packit Service 0a38ef
  | `searchtimelimit` |  
Packit Service 0a38ef
  | `searchrecordslimit` |  
Packit Service 0a38ef
  | `usersearch` |  
Packit Service 0a38ef
  | `groupsearch` |  
Packit Service 0a38ef
  | `enable_migration` |  
Packit Service 0a38ef
  | `groupobjectclasses` |  
Packit Service 0a38ef
  | `userobjectclasses` |  
Packit Service 0a38ef
  | `pwdexpnotify` |  
Packit Service 0a38ef
  | `configstring` |  
Packit Service 0a38ef
  | `selinuxusermapdefault` |  
Packit Service 0a38ef
  | `selinuxusermaporder` |  
Packit Service 0a38ef
  | `pac_type` |  
Packit Service 0a38ef
  | `user_auth_type` |  
Packit Service 0a38ef
  | `domain_resolution_order` |  
Packit Service 0a38ef
  | `ca_renewal_master_server` |  
Packit Service 0a38ef
Packit Service 0a38ef
All returned fields take the same form as their namesake input parameters
Packit Service 0a38ef
Packit Service 0a38ef
Authors
Packit Service 0a38ef
=======
Packit Service 0a38ef
Packit Service 0a38ef
Chris Procter