Datasheet
DEFINE USERS AND THEIR PRIVILEGES 25
Install, Con gure, and
Manage the vSphere
Environment
PART I
$permissions = @()
$permissions = Import-Csv $Filename
foreach ($perm in $permissions) {
$entity = “”
$entity = New-Object VMware.Vim.ManagedObjectReference
$object = Get-Inventory -Name $perm.Name
if($object.Count){
$object = $object | where {$_.Id -eq $perm.EntityId}
}
if($object){
switch -wildcard ($perm.EntityId)
{
Folder* {
$entity.type = “Folder”
$entity.value = $object.Id.Trimstart(“Folder-”)
}
VirtualMachine* {
$entity.Type = “VirtualMachine”
$entity.value = $object.Id.Trimstart(“VirtualMachine-”)
}
ClusterComputeResource* {
$entity.Type = “ClusterComputeResource”
$entity.value = `
$object.Id.Trimstart(“ClusterComputeResource-”)
}
Datacenter* {
$entity.Type = “Datacenter”
$entity.value = $object.Id.Trimstart(“Datacenter-”)
}
}
$setperm = New-Object VMware.Vim.Permission
$setperm.principal = $perm.Principal
if ($perm.isgroup -eq “True”) {
$setperm.group = $true
} else {
$setperm.group = $false
}
$setperm.roleId = (Get-virole $perm.Role).id
if ($perm.propagate -eq “True”) {
$setperm.propagate = $true
890790c01.indd 25890790c01.indd 25 3/3/11 10:22:16 AM3/3/11 10:22:16 AM