6.2 Role-Based Access Control (RBAC) & Global Permissions

Key Takeaways

  • The vSphere authorization model evaluates a security triple: Principal (User or Group), Role (collection of granular Privileges), and Inventory Object.

  • System roles (Administrator, Read-Only, and No Access) are immutable built-in roles that cannot be edited or deleted; custom roles are constructed by selecting individual atomic privileges.

  • Permission inheritance flows downward through the inventory hierarchy; explicit permissions assigned directly to a child object strictly override inherited permissions from a parent entity.

  • When an individual user belongs to multiple groups that are assigned different roles at the exact same inventory level, the user receives the union of all assigned privileges.

  • Global Permissions apply across the entire SSO domain and federated vCenter instances in Enhanced Linked Mode, governing domain-wide services like Content Libraries, Tagging, and licensing.

Last updated: September 2026

6.2 Role-Based Access Control (RBAC) & Global Permissions

Securing a multi-tenant or enterprise vSphere infrastructure requires precise, granular control over which users and automated systems can view, modify, or delete virtual workloads and physical compute resources. VMware vSphere implements a comprehensive Role-Based Access Control (RBAC) architecture that abstracts rights into modular components and evaluates authorization at every tier of the datacenter hierarchy.


The vSphere Authorization Model: Principals, Roles & Objects

Authorization in vSphere is governed by the association of three distinct architectural entities, collectively known as a Permission Binding:

+-----------------------------------------------------------------------------------+
| The vSphere Permission Binding Architecture                                       |
|                                                                                   |
|    [ Principal ]            +           [ Role ]            +     [ Inventory     |
| (User or Directory Group)       (Collection of Privileges)           Object ]     |
|                                                                                   |
|  Examples:                       Examples:                        Examples:       |
|  - CORP\VirtualAdmins            - Administrator (System)         - vCenter Root  |
|  - CORP\HelpDeskTier1            - Read-Only (System)             - Datacenter    |
|  - administrator@vsphere.local   - Virtual Machine Power User     - VM Folder     |
|  - svc-backup@corp.local         - Custom: Snapshot Admin         - Distributed   |
|                                                                     Switch / Port |
+-----------------------------------------------------------------------------------+

1. Principals

A Principal represents the identity performing an action. Principals are authenticated users or security groups derived from configured identity sources (Active Directory over LDAPS, OIDC identity providers, or local vsphere.local accounts).

Architectural Best Practice: Always assign permissions to Directory Groups rather than individual user accounts. Group-based assignment simplifies lifecycle management; onboarding or offboarding personnel in Active Directory automatically adjusts their vSphere access without modifying permission bindings on vCenter objects.

2. Privileges and Roles

  • Privileges: The atomic, indivisible rights defined within vCenter Server. Each privilege corresponds to a specific management operation or API call. Examples include:
    • VirtualMachine.Interact.PowerOn
    • VirtualMachine.Config.AddNewDisk
    • Datastore.AllocateSpace
    • Network.Assign
  • Roles: A logical collection of one or more individual privileges. Users cannot be assigned a raw privilege directly; privileges must be packaged inside a role before being bound to an inventory object.

System Roles vs. Custom Roles

vCenter Server provides two categories of roles:

  1. System Roles (Built-in & Immutable): Pre-packaged roles that exist permanently in vCenter. System roles cannot be renamed, edited, or deleted:
    • Administrator: Grants all privileges across all objects in the inventory. It is assigned by default to administrator@vsphere.local.
    • Read-Only: Allows the principal to view the state and configuration of inventory objects, performance charts, and tasks, but forbids initiating actions, powering VMs on/off, or modifying configurations.
    • No Access: A specialized security role containing zero privileges. Assigning No Access to an object strips all access and masks the object from the user's view, overriding any permissions inherited from higher in the tree.
    • Other built-in roles include No cryptography administrator (Administrator privileges except cryptographic operations) and roles used by vSphere Trust Authority (Trusted infrastructure administrator). Know that they exist; the three above are the ones exam questions usually test.
  2. Sample & Custom Roles: vCenter includes sample roles (such as Virtual Machine Power User, Datastore Consumer, and Network Consumer) that can be cloned and modified. Administrators create custom roles to implement least-privilege security boundaries for specialized operational tiers (e.g., storage engineers, network operators, compliance auditors).

Roles vs. Privileges Comparison Matrix

Role NameCategoryModifiable?Sample Key Privileges IncludedTypical Operational Use Case
AdministratorSystem RoleNoAll privileges across compute, storage, network, and securityCore infrastructure architects and root platform administrators
Read-OnlySystem RoleNoSystem.View, System.Read, System.AnonymousRead-only monitoring tools, external auditors, operational dashboards
No AccessSystem RoleNoNone (Explicit denial role)Masking confidential departments or sensitive VMs from broad groups
Virtual Machine Power UserSample CustomYesVM.Interact.*, VM.Config.Rename, VM.SnapshotManagement.*Development leads, tier-2 application administrators
Datastore AdministratorCustom RoleYesDatastore.AllocateSpace, Datastore.Configure, Datastore.FileManagementStorage engineering team managing LUN provisioning and VMFS volumes

Inventory Hierarchy & Permission Inheritance Rules

vSphere inventory entities are organized in a strict parent-child structural hierarchy:

vCenter Server⟶Datacenter⟶Cluster⟶Folder / Resource Pool⟶Host / Virtual Machine\text{vCenter Server} \longrightarrow \text{Datacenter} \longrightarrow \text{Cluster} \longrightarrow \text{Folder / Resource Pool} \longrightarrow \text{Host / Virtual Machine}

When a permission binding is created on an object, the administrator can toggle the Propagate to children checkbox. When enabled (the default), the permission cascades downward through every nested container and entity in that branch of the tree.

+-----------------------------------------------------------------------------------+
| Permission Inheritance & Precedence Rules in vSphere                              |
|                                                                                   |
| 1. Explicit Assignment Trumps Inherited Assignment:                               |
|    [ Datacenter ] ----> Group: Operations | Role: Read-Only (Propagated)          |
|          |                                                                        |
|          v                                                                        |
|    [ VM Folder: Production ]                                                      |
|          |                                                                        |
|          v                                                                        |
|    [ VM: Web-Server-01 ] -> Group: Operations | Role: Administrator (Explicit)    |
|                                                                                   |
|    Result on Web-Server-01: Operations has ADMINISTRATOR rights.                  |
|    The explicit binding on the child object strictly overrides the inherited       |
|    Read-Only role from the parent Datacenter.                                     |
|                                                                                   |
| 2. Multi-Group Union at the Same Level:                                           |
|    [ VM: Database-01 ]                                                            |
|      ├── Assigned: Group A (Tier-1 Support)  | Role: Read-Only                     |
|      └── Assigned: Group B (Database Admins) | Role: VM Power User                 |
|                                                                                   |
|    Result for user in BOTH Group A and Group B: User gets the UNION of rights     |
|    (VM Power User privileges).                                                    |
+-----------------------------------------------------------------------------------+

The Three Fundamental Rules of vSphere Permission Resolution

  1. Child Precedence (Vertical Rule): A permission placed directly on an inventory object always takes precedence over an inherited permission cascading from a parent object, regardless of whether the child role is more restrictive or less restrictive. If a user is granted Administrator at the vCenter root, but assigned Read-Only on a specific VM Folder, their effective right on that folder and its child VMs is strictly Read-Only.
  2. Union of Roles (Horizontal Rule): If a user is granted permissions on the exact same inventory object through multiple security group memberships, vCenter resolves the conflict by granting the union of all privileges. The user receives the cumulative rights of all bound roles.
  3. User Assignment Overrides Group Assignment: If an individual user account is explicitly assigned a permission on an object, that direct user binding takes precedence over any group bindings assigned to that exact same object.

Global Permissions vs. vCenter Inventory Permissions

In multi-vCenter and enterprise environments utilizing Enhanced Linked Mode (ELM), permissions are partitioned into two architectural domains: Local vCenter Inventory Permissions and Global Permissions.

Local vCenter Inventory Permissions

  • Scope: Bound directly to entities within an individual vCenter Server's inventory tree (Hosts, Clusters, Datastores, Networks, VMs).
  • Storage: Stored locally within the vCenter PostgreSQL database (VCDB).
  • Isolation: An inventory permission assigned in vcenter-ny.corp.local does not automatically replicate or grant rights to objects inside vcenter-lon.corp.local, even if both servers share the same SSO domain.

Global Permissions

  • Scope: Universal authorization across the entire vSphere Single Sign-On domain. Global Permissions apply to all linked vCenter Server instances as well as domain-wide shared services.
  • Storage & Replication: Stored within the VMware Directory Service (vmdir) and automatically synchronized across all linked vCenter appliances via multi-master replication.
  • Governed Services:
    • Content Libraries: Creating, publishing, and subscribing to global ISO and VM template libraries.
    • vSphere Tagging & Custom Attributes: Defining global metadata categories and assigning tags across multi-site inventories.
    • License Management: Viewing, assigning, and reporting on license keys consumed across multiple vCenter instances.
    • Root Inventory Propagation: If an administrator grants a Global Permission to a principal with the Propagate to children option selected, that principal automatically inherits that role across the root of every vCenter Server in the linked SSO domain.

Principles of Least-Privilege Administration

To prevent security compromises and operational outages, enterprise architectures enforce the following access control safeguards:

  1. Eliminate Broad Root Administrator Assignments: Never grant domain-level security groups (such as Domain Admins) the Administrator role at the vCenter root object. Reserve full Administrator access for emergency personnel and automation accounts.
  2. Companion Privileges for Provisioning: Virtual machine deployment requires privileges across multiple orthogonal subsystems. To clone or create a virtual machine, the principal must possess:
    • VirtualMachine.Inventory.Create on the target VM Folder
    • Datastore.AllocateSpace on the target Datastore
    • Network.Assign on the target Distributed Port Group or Standard Port Group
    • Resource.AssignVMToPool on the target ESXi Host, Cluster, or Resource Pool If any of these companion privileges are absent, VM provisioning fails with a permission denied error.
Loading diagram...
vSphere Permission Inheritance and Override Hierarchy

Realistic Implementation Scenarios & Exam Traps

Scenario 1: VM Creation Failure Due to Missing Companion Privileges

Problem: A junior cloud administrator is tasked with deploying virtual machines from a golden template. The user has been assigned the custom role VM Creator on the target VM Folder Production-Workloads. However, when attempting to complete the New VM from Template wizard, the final Finish button triggers an immediate error: Permission to perform this operation was denied: User does not hold privilege Network.Assign on DistributedVirtualPortgroup: dvPG-VLAN100.

Root Cause Analysis:

  • The junior administrator's custom role provided complete rights over virtual machine inventory (VirtualMachine.Provisioning.*), but access control in vSphere is enforced on the underlying resources consumed by the VM.
  • Connecting a virtual machine's virtual network interface card (vNIC) to a network consumes distributed switch port group resources. The user held zero privileges on the network entity.

Resolution:

  1. In the vSphere Client, navigate to the Networking inventory view.
  2. Locate the target distributed port group dvPG-VLAN100.
  3. Navigate to Permissions and click Add.
  4. Add the junior administrator's security group and assign the sample role Network Consumer (which contains Network.Assign).
  5. Verify that the user also possesses Datastore Consumer (Datastore.AllocateSpace) on the target VMFS/vSAN datastore.

Scenario 2: Isolating PCI-DSS Compliance Workloads Using the "No Access" Role

Problem: An enterprise hosts regular corporate workloads and highly audited PCI-DSS payment processing virtual machines within the same vSphere cluster. The general IT Operations group holds the Virtual Machine Power User role propagated from the Datacenter root. Security auditors demand that general IT personnel have zero visibility into payment processing VMs.

Resolution & Verification:

  1. Create a dedicated VM Folder named PCI-Compliance-Restricted under the Datacenter.
  2. Move all sensitive payment gateway and cardholder virtual machines into this folder.
  3. Select the PCI-Compliance-Restricted folder, navigate to Permissions, and click Add.
  4. Select the general IT Operations group (CORP\IT-Ops), assign the No Access system role, and check Propagate to children.
  5. When members of CORP\IT-Ops log into the vSphere Client, the PCI-Compliance-Restricted folder and all nested virtual machines are completely hidden from the inventory tree. Any direct API queries targeting those VM managed object references (MoRefs) return an access denied fault.

Exam Trap: Remember the golden rule of vSphere permission resolution: Direct explicit child assignment beats parent inheritance every time, regardless of role power. If an administrator is granted Administrator at the cluster level, but assigned Read-Only on a specific child VM, the user CANNOT power off or reconfigure that child VM. Furthermore, if a user has conflicting roles assigned via two different security groups at the exact same object level, vCenter grants the union of privileges.

Test Your Knowledge

A system engineer is a member of two Active Directory groups: Group-Engineering and Group-Auditing. In the vCenter Server inventory, Group-Engineering is assigned the 'Virtual Machine Power User' role on a VM Folder, and Group-Auditing is assigned the 'Read-Only' role on the exact same VM Folder. What is the engineer's effective permission on the virtual machines inside that folder?

A

Read-Only, because the more restrictive role always takes precedence to enforce security

B

Virtual Machine Power User, because permissions assigned to the same object across multiple groups resolve to the union of privileges

C

No Access, because conflicting role assignments cause an authorization deadlock that revokes permissions

D

The engineer is prompted at login to select which role profile to assume for that operational session

Test Your Knowledge

An IT administrator holds the 'Virtual Machine Administrator' role on a specific VM Folder, which includes full rights to deploy, configure, and power on virtual machines. However, when attempting to clone a virtual machine into this folder and connect it to a distributed port group, the task fails with an authorization error. What is the cause of this failure?

A

The administrator is missing the Global Permission for VMware Directory Service replication

B

The ESXi hypervisor hosting the VM is operating in Strict Lockdown Mode

C

Virtual machine provisioning requires the administrator to possess root SSH credentials on the target host

D

The administrator lacks companion privileges such as Network.Assign on the distributed port group and Datastore.AllocateSpace on the target datastore

Test Your Knowledge

An enterprise operates two vCenter Server appliances in an Enhanced Linked Mode (ELM) configuration within a single Single Sign-On (SSO) domain. The cloud security architect needs to configure user permissions to manage Content Libraries and Global Tags across both vCenter instances. Which permission model should be used?

A

Global Permissions assigned under Administration > Access Control > Global Permissions

B

Local inventory permissions assigned on the root object of each individual vCenter Server separately

C

Direct local ESXi host permissions configured via the ESXi Host Client on port 443

D

Operating system group memberships configured inside the vCenter Server Appliance shell (/etc/group)

Sections you finish are checked off in the contents.