# influxdb_user – Manage InfluxDB users

New in version 2.5.

- Synopsis

- Requirements

- Parameters

- Examples

- Status

## Synopsis

- Manage InfluxDB users.

## Requirements

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

- python >= 2.6

- influxdb >= 0.9

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---

admin
boolean

Choices:
- no ←
- yes

Whether the user should be in the admin role or not.
Since version 2.8, the role will also be updated.

grants list / elements=dictionary added in 2.8 |  | Privileges to grant to this user. Takes a list of dicts containing the "database" and "privilege" keys. If this argument is not provided, the current grants will be left alone. If an empty list is provided, all grants for the user will be removed.
hostname string | Default: "localhost" | The hostname or IP address on which InfluxDB server is listening. Since Ansible 2.5, defaulted to localhost.
password string | Default: "root" | Password that will be used to authenticate against InfluxDB server. Alias `login_password` added in Ansible 2.5. aliases: login_password
port integer | Default: 8086 | The port on which InfluxDB server is listening
proxies dictionary added in 2.5 |  | HTTP(S) proxy to use for Requests to connect to InfluxDB server.
retries integer added in 2.5 | Default: 3 | Number of retries client will try before aborting. `0` indicates try until success.

ssl
boolean
added in 2.5

Choices:
- no
- yes

Use https instead of http to connect to InfluxDB server.

state
string

Choices:
- absent
- present ←

State of the user.

timeout integer added in 2.5 |  | Number of seconds Requests will wait for client to establish a connection.
udp_port integer added in 2.5 | Default: 4444 | UDP port to connect to InfluxDB server.

use_udp
boolean
added in 2.5

Choices:
- no
- yes

Use UDP to connect to InfluxDB server.

user_name string / required |  | Name of the user.
user_password string |  | Password to be set for the user.
username string | Default: "root" | Username that will be used to authenticate against InfluxDB server. Alias `login_username` added in Ansible 2.5. aliases: login_username

validate_certs
boolean
added in 2.5

Choices:
- no
- yes ←

If set to `no`, the SSL certificates will not be validated.
This should only set to `no` used on personally controlled sites using self-signed certificates.

## Examples

    - name: Create a user on localhost using default login credentials
      influxdb_user:
        user_name: john
        user_password: s3cr3t

    - name: Create a user on localhost using custom login credentials
      influxdb_user:
        user_name: john
        user_password: s3cr3t
        login_username: "{{ influxdb_username }}"
        login_password: "{{ influxdb_password }}"

    - name: Create an admin user on a remote host using custom login credentials
      influxdb_user:
        user_name: john
        user_password: s3cr3t
        admin: yes
        hostname: "{{ influxdb_hostname }}"
        login_username: "{{ influxdb_username }}"
        login_password: "{{ influxdb_password }}"

    - name: Create a user on localhost with privileges
      influxdb_user:
        user_name: john
        user_password: s3cr3t
        login_username: "{{ influxdb_username }}"
        login_password: "{{ influxdb_password }}"
        grants:
          - database: 'collectd'
            privilege: 'WRITE'
          - database: 'graphite'
            privilege: 'READ'

    - name: Destroy a user using custom login credentials
      influxdb_user:
        user_name: john
        login_username: "{{ influxdb_username }}"
        login_password: "{{ influxdb_password }}"
        state: absent

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]

- This module is maintained by the Ansible Community. [community]

### Authors

- Vitaliy Zhhuta (@zhhuta)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.