# mso_user – Manage users

New in version 2.8.

- Synopsis

- Requirements

- Parameters

- Notes

- Examples

- Status

## Synopsis

- Manage users on Cisco ACI Multi-Site.

## Requirements

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

- Multi Site Orchestrator v2.1 or newer

## Parameters

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

account_status
string

Choices:
- active

The status of the user account.

domain string |  | The domain this user belongs to. When creating new users, this defaults to `Local`.
email string |  | The email address of the user. This parameter is required when creating new users.
first_name string |  | The first name of the user. This parameter is required when creating new users.
host string / required |  | IP Address or hostname of the ACI Multi Site Orchestrator host. aliases: hostname
last_name string |  | The last name of the user. This parameter is required when creating new users.

output_level
string

Choices:
- debug
- info
- normal ←

Influence the output of this ACI module.
`normal` means the standard output, incl. `current` dict
`info` adds informational output, incl. `previous`, `proposed` and `sent` dicts
`debug` adds debugging output, incl. `filter_string`, `method`, `response`, `status` and `url` information

password string / required |  | The password to use for authentication. This option is mutual exclusive with `private_key`. If `private_key` is provided too, it will be used instead.
phone string |  | The phone number of the user. This parameter is required when creating new users.
port integer |  | Port number to be used for the REST connection. The default value depends on parameter `use_ssl`.
roles list |  | The roles for this user.

state
string

Choices:
- absent
- present ←
- query

Use `present` or `absent` for adding or removing.
Use `query` for listing an object or multiple objects.

timeout integer | Default: 30 | The socket level timeout in seconds.

use_proxy
boolean

Choices:
- no
- yes ←

If `no`, it will not use a proxy, even if one is defined in an environment variable on the target hosts.

use_ssl
boolean

Choices:
- no
- yes ←

If `no`, an HTTP connection will be used instead of the default HTTPS connection.

user string / required |  | The name of the user. aliases: name
user_password string |  | The password of the user.
username string | Default: "admin" | The username to use for authentication.

validate_certs
boolean

Choices:
- no
- yes ←

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

## Notes

Note

- A default installation of ACI Multi-Site ships with admin password ‘we1come!’ which requires a password change on first login. See the examples of how to change the ‘admin’ password using Ansible.

- Please read the Cisco ACI Guide for more detailed information on how to manage your ACI infrastructure using Ansible.

- This module was written to support ACI Multi Site Orchestrator v2.1 or newer. Some or all functionality may not work on earlier versions.

## Examples

    - name: Update initial admin password
      mso_user:
        host: mso_host
        username: admin
        password: we1come!
        user_name: admin
        user_password: SomeSecretPassword
        state: present
      delegate_to: localhost

    - name: Add a new user
      mso_user:
        host: mso_host
        username: admin
        password: SomeSecretPassword
        user_name: dag
        description: Test user
        first_name: Dag
        last_name: Wieers
        email: dag@wieers.com
        phone: +32 478 436 299
        state: present
      delegate_to: localhost

    - name: Remove a user
      mso_user:
        host: mso_host
        username: admin
        password: SomeSecretPassword
        user_name: dag
        state: absent
      delegate_to: localhost

    - name: Query a user
      mso_user:
        host: mso_host
        username: admin
        password: SomeSecretPassword
        user_name: dag
        state: query
      delegate_to: localhost
      register: query_result

    - name: Query all users
      mso_user:
        host: mso_host
        username: admin
        password: SomeSecretPassword
        state: query
      delegate_to: localhost
      register: query_result

## Status

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

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

### Authors

- Dag Wieers (@dagwieers)

Hint

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