�
�Udac @` s� d d l m Z m Z m Z e Z i d d 6d g d 6d d 6Z d Z d Z d
Z d d l
m Z d d l m
Z
m Z d
Z d � Z d � Z d � Z d � Z e d k r� e � n d S( i ( t absolute_importt divisiont print_functions 1.1t metadata_versiont previewt statust communityt supported_bysH
---
module: purefa_user
version_added: '2.8'
short_description: Create, modify or delete FlashArray local user account
description:
- Create, modify or delete local users on a Pure Storage FlashArray.
author:
- Pure Storage Ansible Team (@sdodsley) <[email protected]>
options:
state:
description:
- Create, delete or update local user account
default: present
type: str
choices: [ absent, present ]
name:
description:
- The name of the local user account
type: str
role:
description:
- Sets the local user's access level to the array
type: str
choices: [ readonly, storage_admin, array_admin ]
password:
description:
- Password for the local user.
type: str
old_password:
description:
- If changing an existing password, you must provide the old password for security
type: str
api:
description:
- Define whether to create an API token for this user
- Token can be exposed using the I(debug) module
type: bool
default: false
extends_documentation_fragment:
- purestorage.fa
s�
- name: Create new user ansible with API token
purefa_user:
name: ansible
password: apassword
role: storage_admin
api: true
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
register: result
debug:
msg: "API Token: {{ result['user_info']['user_api'] }}"
- name: Change role type for existing user
purefa_user:
name: ansible
role: array_admin
state: update
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Change password type for existing user (NOT IDEMPOTENT)
purefa_user:
name: ansible
password: anewpassword
old_password: apassword
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
- name: Change API token for existing user
purefa_user:
name: ansible
api: true
state: update
fa_url: 10.10.10.2
api_token: e31060a7-21fc-e277-6240-25983c6c4592
register: result
debug:
msg: "API Token: {{ result['user_info']['user_api'] }}"
t
( t
AnsibleModule( t
get_systemt purefa_argument_specs 1.14c C` s^ d } | j � } xE t d t | � � D]. } | | d | j d k r( | | } q( q( W| S( s! Return Local User Account or Nonei t nameN( t Nonet list_adminst ranget lent params( t modulet arrayt usert userst acct( ( sS /usr/lib/python2.7/site-packages/ansible/modules/storage/purestorage/purefa_user.pyt get_usern s c
C` s� t } t | | � } | j d } t } t } t } i } | s1y� | sR d } n | j | j d d | d | j d �| j d r� y"