vSphere Service Account Requirements

Page last updated:

This topic describes the minimum privileges required by the vSphere BOSH CPI. A vSphere admin must grant the following privileges to the vSphere service account that Pivotal Cloud Foundry (PCF) uses to manage vSphere resources.

The PCF account needs privileges at both the vCenter server level and the Datacenter level. See Hierarchical Inheritance of Permissions in the VMware documentation for how permission levels and inheritance work in vSphere.

vCenter-Level Privileges

Ops Manager assigns custom attributes to the virtual machines (VMs) it deploys to identify BOSH releases and job index information about each VM. vCenter APIs require vCenter server level access to manage these custom attributes.

The following table summarizes the privileges that a PCF account requires at the vCenter Server instance level. Some of these privileges are inherited, and others must be granted by a vCenter admin:

ObjectPrivilege (UI)Privilege (API)
GlobalManage custom attributesGlobal.ManageCustomFields
Set custom attributesGlobal.SetCustomField
Register extensionsExtension.Register
Profile-Driven Storage Profile-driven storage StorageProfile.Update

Datacenter-Level Privileges

The following privileges must be set at the data center level:

Object Privilege (UI) Privilege (API)
Datastore Low level file operations Datastore.FileManagement
Network Assign network Network.Assign

Folder and Datastore-Level Privileges

You must grant the following privileges on any entities in a datacenter where you will deploy PCF:

Datastore Object

Privilege (UI)Privilege (API)
Allocate spaceDatastore.AllocateSpace
Browse datastoreDatastore.Browse
Remove fileDatastore.DeleteFile
Update virtual machine filesDatastore.UpdateVirtualMachineFiles

Folder Object

Ops Manager creates a folder for VMs, stemcells, and persistent disks during installation. The folder contents change frequently as Ops Manager applies changes.

Privilege (UI) Privilege (API)
Create folderFolder.Create
Delete folder Folder.Delete
Move folderFolder.Move
Rename folderFolder.Rename

Host Object

Privilege (UI) Privilege (API)
Change cluster properties Host.Inventory.EditCluster

Inventory Service Object

Privilege (UI) Privilege (API)
vSphere Tagging > Create vSphere Tag InventoryService.Tagging.CreateTag
vSphere Tagging > Delete vSphere Tag InventoryService.Tagging.EditTag
vSphere Tagging > Edit vSphere Tag InventoryService.Tagging.DeleteTag

Resource Object

When using vAppImport to clone a VM, BOSH requires the resource migration privileges to create a new, powered-off VM based on a given stemcell. BOSH migrates the VM to the destination datastore, where Ops Manager deploys the VM and powers it on.

Privilege (UI) Privilege (API)
Assign virtual machine to resource poolResource.AssignVMToPool
Migrate powered off virtual machineResource.ColdMigrate
Migrate powered on virtual machineResource.HotMigrate

Virtual Machine Object


Privilege (UI) Privilege (API)
Add existing diskVirtualMachine.Config.AddExistingDisk
Add new diskVirtualMachine.Config.AddNewDisk
Add or remove deviceVirtualMachine.Config.AddRemoveDevice
Change CPU countVirtualMachine.Config.CPUCount
Change resourceVirtualMachine.Config.Resource
Configure managedByVirtualMachine.Config.ManagedBy
Disk change trackingVirtualMachine.Config.ChangeTracking
Disk leaseVirtualMachine.Config.DiskLease
Display connection settingsVirtualMachine.Config.MksControl
Extend virtual diskVirtualMachine.Config.DiskExtend
Modify device settingsVirtualMachine.Config.EditDevice
Raw deviceVirtualMachine.Config.RawDevice
Reload from pathVirtualMachine.Config.ReloadFromPath
Remove diskVirtualMachine.Config.RemoveDisk
Reset guest informationVirtualMachine.Config.ResetGuestInfo
Set annotationVirtualMachine.Config.Annotation
Swapfile placementVirtualMachine.Config.SwapPlacement
Unlock virtual machineVirtualMachine.Config.Unlock
Upgrade virtual machine hardwareVirtualMachine.Config.UpgradeVirtualHardware

Guest Operations

Privilege (UI) Privilege (API)
Guest Operation Program ExecutionVirtualMachine.GuestOperations.Execute
Guest Operation ModificationsVirtualMachine.GuestOperations.Modify
Guest Operation QueriesVirtualMachine.GuestOperations.Query


Privilege (UI) Privilege (API)
Answer questionVirtualMachine.Interact.AnswerQuestion
Configure CD mediaVirtualMachine.Interact.SetCDMedia
Interact with VM’s mouse, keyboard, and screenVirtualMachine.Interact.ConsoleInteract
Defragment operations on any VM diskVirtualMachine.Interact.DefragmentAllDisks
Device connectionVirtualMachine.Interact.DeviceConnection
Guest operating system management by VIX APIVirtualMachine.Interact.GuestControl
Power offVirtualMachine.Interact.PowerOff
Power onVirtualMachine.Interact.PowerOn
VMware Tools installVirtualMachine.Interact.ToolsInstall


Privilege (UI) Privilege (API)
Create new VM from existingVirtualMachine.Inventory.CreateFromExisting
Create new VMVirtualMachine.Inventory.Create
Add a VM to a vCenter Server or host inventoryVirtualMachine.Inventory.Register
Remove a VMVirtualMachine.Inventory.Delete
Unregister a VM from a vCenter Server or host inventoryVirtualMachine.Inventory.Unregister


When cloning a stemcell, BOSH sets custom specifications, such as hostnames and network configurations, based on the stemcell operating system.

The VM download privilege allows BOSH to modify files within a VM, including links between VMs and persistent disks. When vMotion migrates disks in vSphere, BOSH uses these links to maintain the connections between VMs and their persistent disks.

Privilege (UI) Privilege (API)
Allow disk accessVirtualMachine.Provisioning.DiskRandomAccess
Allow read-only disk accessVirtualMachine.Provisioning.DiskRandomRead
Allow virtual machine downloadVirtualMachine.Provisioning.GetVmFiles
Allow virtual machine files uploadVirtualMachine.Provisioning.PutVmFiles
Clone templateVirtualMachine.Provisioning.CloneTemplate
Clone virtual machineVirtualMachine.Provisioning.Clone
Deploy templateVirtualMachine.Provisioning.DeployTemplate
Mark as templateVirtualMachine.Provisioning.MarkAsTemplate
Mark as virtual machineVirtualMachine.Provisioning.MarkAsVM
Modify customization specificationVirtualMachine.Provisioning.ModifyCustSpecs
Promote disksVirtualMachine.Provisioning.PromoteDisks
Read customization specificationsVirtualMachine.Provisioning.ReadCustSpecs

Snapshot Management

Before Ops Manager deploys a new VM, it uses a snapshot to clone the stemcell image to the destination.

Privilege (UI) Privilege (API)
Create snapshotVirtualMachine.State.CreateSnapshot
Remove snapshotVirtualMachine.State.RemoveSnapshot
Rename snapshotVirtualMachine.State.RenameSnapshot
Revert snapshotVirtualMachine.State.RevertToSnapshot

vApp Object

These privileges must be set at the resource pool level. VApp.ApplicationConfig is required when attaching or detaching persistent disks.

Privilege (UI)Privilege (API)
vApp application configurationVApp.ApplicationConfig