everpure.flasharray.purefa_localuser module – Manage Everpure FlashArray local users
Note
This module is part of the everpure.flasharray collection (version 1.46.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 everpure.flasharray.
You need further requirements to be able to use this module,
see Requirements for details.
To use it in a playbook, specify: everpure.flasharray.purefa_localuser.
New in everpure.flasharray 1.45.0
Synopsis
Create, rename, reconfigure and delete users inside a local directory service on Everpure FlashArrays, and manage the groups they belong to.
Every user belongs to one local directory service, which is managed by everpure.flasharray.purefa_lds. User names are only unique within a service, so local_directory_service is always required. The groups a user joins are managed by everpure.flasharray.purefa_localgroup.
Each local directory service is created holding its own
AdministratorandGuestusers. Those are built-in - the array allows them to be modified, which is how a password is set on a new service’sAdministrator, but not deleted.
Requirements
The below requirements are needed on the host that executes this module.
python >= 3.3
purestorage >= 1.19
py-pure-client >= 1.88.0
netaddr
requests
pycountry
urllib3
Parameters
Parameter |
Comments |
|---|---|
FlashArray API token for admin privileged user. |
|
ID of the API Client that issues the identity token. Used with private_key_file. |
|
Name of fleet member on which to perform the operation. This requires the array receiving the request is a member of a fleet and the context name to be a member of the same fleet. Default: |
|
Disable insecure certificate warnings in debug logs Choices:
|
|
Email address to associate with the user. |
|
Whether the user is allowed to authenticate. Choices:
|
|
FlashArray management IPv4 address or Hostname. |
|
The groups the user belongs to besides primary_group. This is declarative - groups not in the list are left, and the user is removed from any others. Omit it to leave the user’s groups alone. The primary group is always a membership and is ignored if listed here. |
|
A pre-signed JWT to authenticate with, as an alternative to api_token. The token is exchanged by the array for a short-lived access token. Requires a matching API Client to be registered on the array (see everpure.flasharray.purefa_apiclient). |
|
The API Client’s trusted identity issuer registered on the array. Used with private_key_file. |
|
Key ID of the API Client that issues the identity token. Used with private_key_file. |
|
Name of the local directory service the user belongs to. Required because user names repeat across local directory services. |
|
Name of the local user |
|
Password for the local user. Required when creating a user. Whether an existing user’s password is reset is controlled by update_password. |
|
Name of the group to make the user’s primary group. Required when creating a user, and the group has to exist already. A user must belong to a group before it can become their primary group. This module joins the group first when it has to. |
|
Path to the PEM RSA private key used to sign an identity token, as an alternative to api_token. Requires client_id, key_id, issuer and username. |
|
Password protecting private_key_file, if encrypted. |
|
Value to rename the specified local user to Re-running a rename task reports no change, as long as the user is already known by the new name. |
|
Define whether the local user should exist or not. Choices:
|
|
User ID to give the user. The array assigns one when the user is created without it. User IDs only have to be unique within a local directory service. |
|
Choices:
|
|
Username the issued token should be granted to. Must be a valid user on the array. Used with private_key_file. |
Notes
Note
Supported from Purity//FA 6.8.0 or higher. Local users themselves go back further, but the parameters that scope a request to one local directory service arrived with the service object itself, and without them a request cannot be aimed reliably once an array holds more than one service.
The array limits a local user name to 20 characters. Alphanumeric US ASCII, spaces and symbols are allowed, but not control characters, and not the symbols
/,\\,[,],:,;,|,=,,,+,*,?,<,>or@. A name may not be digits alone, and may neither start nor end with a dot or a space.Creating a user requires both password and primary_group. The array refuses either on its own.
Deleting the local directory service deletes every user in it. See everpure.flasharray.purefa_lds.
This module requires the
py-pure-clientPython library.Additional Python libraries may be required for specific modules.
You must set
PUREFA_URLandPUREFA_APIenvironment variables if fa_url and api_token arguments are not passed to the module directly.Token-based authentication (id_token, or private_key_file with client_id, key_id, issuer and username) may be used as an alternative to api_token, and requires a matching API Client registered on the array via everpure.flasharray.purefa_apiclient.
Examples
- name: Create local user fred in local directory service foo
everpure.flasharray.purefa_localuser:
name: fred
local_directory_service: foo
password: "{{ fred_password }}"
primary_group: users
uid: 71000
email: fred@example.com
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Create local user fred in two extra groups
everpure.flasharray.purefa_localuser:
name: fred
local_directory_service: foo
password: "{{ fred_password }}"
primary_group: users
groups:
- backup
- reporting
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Remove fred from every group except his primary one
everpure.flasharray.purefa_localuser:
name: fred
local_directory_service: foo
groups: []
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Set the password on a new service's built-in Administrator
everpure.flasharray.purefa_localuser:
name: Administrator
local_directory_service: foo
password: "{{ admin_password }}"
update_password: always
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Disable local user fred
everpure.flasharray.purefa_localuser:
name: fred
local_directory_service: foo
enabled: false
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Delete local user fred
everpure.flasharray.purefa_localuser:
name: fred
local_directory_service: foo
state: absent
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592