Grant-SCResource
Grant-SCResource
Grants a user or self-service user role access to a resource.
Syntax
Parameter Set: Default
Grant-SCResource -Resource <ClientObject> [-JobGroup <Guid]> ] [-JobVariable <String> ] [-OnBehalfOfUser <System.String> ] [-OnBehalfOfUserRole <Microsoft.SystemCenter.VirtualMachineManager.UserRole> ] [-PROTipID <Guid]> ] [-RunAsynchronously] [-UserName <String> ] [-UserRoleID <Guid[]> ] [-UserRoleName <String[]> ] [-VMMServer <ServerConnection> ] [ <CommonParameters>]
Detailed Description
The Grant-SCResource cmdlet grants a user or self-service user role access to a resource.
Types of resources that can be shared using Grant-SCResource include the following:
-- Service templates
-- Virtual machine templates
-- Guest operating system profiles
-- SQL Server profiles
-- Hardware profiles
-- Application profiles
-- Services
-- Virtual machines
Parameters
-JobGroup<Guid]>
Specifies an identifier for a series of commands that run as a set just before the final command that includes the same job group identifier runs.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-JobVariable<String>
Specifies that job progress is tracked and stored in the variable named by this parameter.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-OnBehalfOfUser<System.String>
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-OnBehalfOfUserRole<Microsoft.SystemCenter.VirtualMachineManager.UserRole>
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-PROTipID<Guid]>
Specifies the ID of the PRO tip that triggered this action. This allows for auditing of PRO tips.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-Resource<ClientObject>
Specifies a resource object.
Aliases |
none |
Required? |
true |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
True (ByValue) |
Accept Wildcard Characters? |
false |
-RunAsynchronously
Indicates that the job runs asynchronously so that control returns to the command shell immediately.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-UserName<String>
Specifies a the name of a user. Enter a user name with the format Domain\User.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-UserRoleID<Guid[]>
Specifies the ID of a user role.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-UserRoleName<String[]>
Specifies the name of a user role. Types of user roles that are named include Delegated Administrator, Read-Only Administrator and Self-Service User.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
-VMMServer<ServerConnection>
Specifies a VMM server object.
Aliases |
none |
Required? |
false |
Position? |
named |
Default Value |
none |
Accept Pipeline Input? |
false |
Accept Wildcard Characters? |
false |
<CommonParameters>
This cmdlet supports the common parameters: -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer, and -OutVariable. For more information, see about_CommonParameters (https://go.microsoft.com/fwlink/p/?LinkID=113216).
Inputs
The input type is the type of the objects that you can pipe to the cmdlet.
Outputs
The output type is the type of the objects that the cmdlet emits.
- Resource
Examples
Example 1: Share a resource with a specific user
The first command gets the template object named Template01, and then stores the object in the $Resource variable.
The second command shares the resource stored in $Resource with the user named Katarina. If the user is a member of multiple self-service user roles with receive permission, then a user role must be specified.
PS C:\> $Resource = Get-SCVMTemplate | where {$_.Name -eq "Template01"}
PS C:\> Grant-SCResource Resource $Resource -Username "Contoso\Katarina"
Example 2: Share a resource with a user who is a member of multiple user roles
The first command gets the template object named Template01, and then stores the object in the $Resource variable.
The second command shares the resource stored in $Resource with the user named Katarina, but only while that user is using the ContosoSelfServiceUsers or SelfServiceUserRole02 user roles.
PS C:\> $Resource = Get-SCVMTemplate | where {$_.Name -eq "Template01"}
PS C:\> Grant-SCResource -Resource $Resource -Username "Contoso\Katarina" -UserRoleName @("ContosoSelfServiceUsers", "SelfServiceUserRole02")
Example 3: Share a resource with all members of a user role
The first command gets the template object named VMTemplate01, and then stores the object in the $Resource variable.
The second command shares the resource stored in $Resource with the members of the user role named ContosoSelfServiceUsers.
PS C:\> $Resource = Get-SCVMTemplate | where {$_.Name -eq "VMTemplate01"}
PS C:\> Grant-SCResource -Resource $Resource -UserRoleName "ContosoSelfServiceUsers"
Example Example 4: Share a resource with all members of a user role by using the user role ID.
The first command gets the template object named VMTemplate01, and then stores the object in the $Resource variable.
The second command gets the user role object named ContosoSelfServiceUsers, and then stores the object in the $UserRole variable.
The last command shares the resource stored in $Resource with the members of user role ContosoSelfServiceUsers.
PS C:\> $Resource = Get-SCVMTemplate | where {$_.Name -eq "VMTemplate01"}
PS C:\> $UserRole = Get-SCUserRole -Name "ContosoSelfServiceUsers"
PS C:\> Grant-SCResource -Resource $Resource -UserRoleId $UserRole.Id