Site icon Digital Thought Disruption

User and Role Management via Ansible and Prism Central

Introduction

Role-based access control (RBAC) in Nutanix is critical to secure infrastructure operations. Prism Central allows you to define users, roles, and permissions across the enterprise. This post shows you how to automate RBAC with Ansible, ensuring secure, consistent access for admins, operators, and service accounts.


My Personal Repository on GitHub

Nutanix Repository on GitHub


Diagram: RBAC Playbook Flow


Use Case


YAML User Spec: users.yml

nutanix_users:
- username: "backupadmin"
email: "backup@example.com"
full_name: "Backup Admin"
password: "S3cur3!"
roles:
- name: "Viewer"

- username: "devops"
email: "devops@example.com"
full_name: "DevOps Lead"
password: "D3v0ps!"
roles:
- name: "Cluster Admin"

Playbook: manage_users.yml

- name: Manage Nutanix Prism Central users
hosts: localhost
gather_facts: false
collections:
- nutanix.ncp
vars_files:
- nutanix_credentials.yml
- users.yml
tasks:

- name: Create or update user roles
loop: "{{ nutanix_users }}"
loop_control:
loop_var: user
nutanix.ncp.users:
state: present
username: "{{ user.username }}"
password: "{{ user.password }}"
email: "{{ user.email }}"
full_name: "{{ user.full_name }}"
roles: "{{ user.roles }}"

Secure Passwords

Use ansible-vault to store passwords safely:

ansible-vault encrypt users.yml

Run the Playbook

ansible-playbook manage_users.yml --ask-vault-pass -i inventory.yml

Optional Enhancements


Summary

Ansible allows you to scale RBAC policies across Nutanix clusters with minimal manual effort. From user onboarding to service account management, the automation ensures you never miss an assignment or misconfigure access.

External Documentation:

Exit mobile version