infoblox.nios_modules.nios_adminuser module – Configure Infoblox NIOS Adminuser
Note
This module is part of the infoblox.nios_modules collection (version 1.8.0).
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 infoblox.nios_modules.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: infoblox.nios_modules.nios_adminuser.
New in infoblox.nios_modules 1.8.0
Synopsis
- Adds and/or removes instances of adminuser objects from Infoblox NIOS servers. This module manages NIOS - adminuserobjects using the Infoblox WAPI interface over REST.
Requirements
The below requirements are needed on the host that executes this module.
- infoblox-client 
Parameters
| Parameter | Comments | 
|---|---|
| The names of the Admin Groups to which this Admin User belongs. Currently, this is limited to only one Admin Group. | |
| Authentication method for the admin user. Choices: 
 | |
| Authentication type for the admin user. Choices: 
 | |
| The CA certificate that is used for user lookup during authentication. | |
| The serial number of the client certificate. | |
| Configures a text string comment to be associated with the instance of this object. The provided text string will be configured on the object instance. | |
| Determines whether the admin user is disabled or not. When this is set to False, the admin user is enabled. Choices: 
 | |
| Email address of the admin user. | |
| Determines whether the user is allowed to log in only with the certificate. Regular username/password authentication will be disabled for this user. Choices: 
 | |
| Allows for the configuration of Extensible Attributes on the instance of the object. This argument accepts a set of key / value pairs for configuration. | |
| Specifies the adminuser name to add or remove from the system. Users can also update the name as it is possible to pass a dict containing new_name, old_name. See examples. | |
| The password for the administrator to use when logging in. | |
| A dict object containing connection details. | |
| Specifies the client certificate file with digest of x509 config for extra layer secure connection the remote instance of NIOS. Value can also be specified using  | |
| Specifies the DNS host name or address for connecting to the remote instance of NIOS WAPI over REST Value can also be specified using  | |
| Insert decription here Default:  | |
| Insert description here Default:  | |
| The amount of time before to wait before receiving a response Value can also be specified using  Default:  | |
| Specifies private key file for encryption with the certificate in order to connect with remote instance of NIOS. Value can also be specified using  | |
| Specifies the maximum number of objects to be returned, if set to a negative number the appliance will return an error when the number of returned objects would exceed the setting. Value can also be specified using  Default:  | |
| Configures the number of attempted retries before the connection is declared usable Value can also be specified using  Default:  | |
| Specifies the password to use to authenticate the connection to the remote instance of NIOS. Value can also be specified using  | |
| Insert description here Choices: 
 | |
| Configures the username to use to authenticate the connection to the remote instance of NIOS. Value can also be specified using  | |
| Boolean value to enable or disable verifying SSL certificates Value can also be specified using  Choices: 
 | |
| Specifies the version of WAPI to use Value can also be specified using  Until ansible 2.8 the default WAPI was 1.4 Default:  | |
| List of SSH keys for the admin user. Default:  | |
| Unique identifier for the key | |
| Type of the SSH key. Choices: 
 | |
| SSH key text. | |
| Configures the intended state of the instance of the object on the NIOS server. When this value is set to  Choices: 
 | |
| The time zone for this admin user. Default:  | |
| Enable/disable the ssh keypair authentication. Choices: 
 | |
| Use flag for time_zone. Choices: 
 | 
Notes
Note
- This module supports - check_mode.
- This module must be run locally, which can be achieved by specifying - connection: local.
- Please read the :ref:`nios_guide` for more detailed information on how to use Infoblox with Ansible. 
Examples
- name: Create a new admin user
  infoblox.nios_modules.nios_adminuser:
    name: ansible_user
    admin_groups: admin-group
    password: "secure_password"
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Update admin user name
  infoblox.nios_modules.nios_adminuser:
    name: {new_name: new_user, old_name: ansible_user}
    admin_groups: admin-group
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Create admin user with remote authentication
  infoblox.nios_modules.nios_adminuser:
    name: remote_admin_user
    admin_groups: admin-group
    auth_type: "REMOTE"
    email: "[email protected]"
    use_time_zone: true
    time_zone: 'US/Hawaii'
    extattrs:
      Site: "USA"
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Create admin user with ssh keys
  infoblox.nios_modules.nios_adminuser:
    name: cloud_user
    admin_groups: cloud-api-only
    comment: "Created by Ansible"
    disable : false
    password: "secure_password"
    use_ssh_keys: true
    ssh_keys:
      - key_name: "sshkey1"
        key_type: "RSA"
        key_value: "{{ lookup('file', '~/.ssh/id_rsa.pub') }}"
      - key_name: "sshkey2"
        key_type: "ECDSA"
        key_value: "{{ lookup('file', '~/.ssh/id_ecdsa.pub') }}"
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Update admin user to enable certificate authentication
  infoblox.nios_modules.nios_adminuser:
    name: admin_user
    admin_groups: admin-group
    enable_certificate_authentication: true
    ca_certificate_issuer: 'CN="ib-root-ca"'
    client_certificate_serial_number: "397F9435000100000031"
    state: present
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
- name: Remove admin user
  infoblox.nios_modules.nios_adminuser:
    name: new_user
    admin_groups: admin-group
    state: absent
    provider:
      host: "{{ inventory_hostname_short }}"
      username: admin
      password: admin
  connection: local
