community.general.vertica_user – Adds or removes Vertica database users and assigns roles.
Note
This plugin is part of the community.general collection (version 2.0.1).
To install it use: ansible-galaxy collection install community.general
.
To use it in a playbook, specify: community.general.vertica_user
.
Synopsis
- Adds or removes Vertica database user and, optionally, assigns roles.
- A user will not be removed until all the dependencies have been dropped.
- In such a situation, if the module tries to remove the user it will fail and only remove roles granted to the user.
Requirements
The below requirements are needed on the host that executes this module.
- unixODBC
- pyodbc
Parameters
Parameter | Choices/Defaults | Comments |
---|---|---|
cluster string | Default: "localhost" | Name of the Vertica cluster. |
db string | Name of the Vertica database. | |
expired boolean |
| Sets the user's password expiration. |
ldap boolean |
| Set to true if users are authenticated via LDAP. The user will be created with password expired and set to $ldap$. |
login_password string | The password used to authenticate with. | |
login_user string | Default: "dbadmin" | The username used to authenticate with. |
name string / required | Name of the user to add or remove. | |
password string | The user's password encrypted by the MD5 algorithm. The password must be generated with the format "md5" + md5[password + username] , resulting in a total of 35 characters. An easy way to do this is by querying the Vertica database with select 'md5'||md5('<user_password><user_name>'). | |
port string | Default: 5433 | Vertica cluster port to connect to. |
profile string | Sets the user's profile. | |
resource_pool string | Sets the user's resource pool. | |
roles string | Comma separated list of roles to assign to the user. aliases: role | |
state string |
| Whether to create present , drop absent or lock locked a user. |
Notes
Note
- The default authentication assumes that you are either logging in as or sudo’ing to the
dbadmin
account on the host. - This module uses
pyodbc
, a Python ODBC database adapter. You must ensure thatunixODBC
andpyodbc
is installed on the host and properly configured. - Configuring
unixODBC
for Vertica requiresDriver = /opt/vertica/lib64/libverticaodbc.so
to be added to theVertica
section of either/etc/odbcinst.ini
or$HOME/.odbcinst.ini
and bothErrorMessagesPath = /opt/vertica/lib64
andDriverManagerEncoding = UTF-16
to be added to theDriver
section of either/etc/vertica.ini
or$HOME/.vertica.ini
.
Examples
- name: Creating a new vertica user with password community.general.vertica_user: name=user_name password=md5<encrypted_password> db=db_name state=present - name: Creating a new vertica user authenticated via ldap with roles assigned community.general.vertica_user: name=user_name ldap=true db=db_name roles=schema_name_ro state=present
Authors
- Dariusz Owczarek (@dareko)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/community/general/vertica_user_module.html