Set-SCUserRole
修改現有 VMM 使用者角色的設定。
語法
Set-SCUserRole
[-UserRole <UserRole>]
[-VMMServer <ServerConnection>]
[-Name <String>]
[-JobGroup <Guid>]
[-AddMember <String[]>]
[-RemoveMember <String[]>]
[-Permission <SelfServicePermission[]>]
[-UserRoleDataPath <String>]
[-RemoveLibraryStoreSharePath]
[-ShowPROTips <Boolean>]
[-AddScope <ClientObject[]>]
[-RemoveScope <ClientObject[]>]
[-Description <String>]
[-VMNetworkMaximum <UInt16>]
[-VMNetworkMaximumPerUser <UInt16>]
[-RemoveVMNetworkMaximum]
[-RemoveVMNetworkMaximumPerUser]
[-VPNConnectionMaximum <UInt16>]
[-VPNConnectionMaximumPerUser <UInt16>]
[-RemoveVPNConnectionMaximum]
[-RemoveVPNConnectionMaximumPerUser]
[-NATConnectionMaximum <UInt16>]
[-NATConnectionMaximumPerUser <UInt16>]
[-RemoveNATConnectionMaximum]
[-RemoveNATConnectionMaximumPerUser]
[-VMNetworkVPNMaximumBandwidthInKbps <UInt64>]
[-VMNetworkVPNMaximumBandwidthOutKbps <UInt64>]
[-RemoveVMNetworkVPNMaximumBandwidthIn]
[-RemoveVMNetworkVPNMaximumBandwidthOut]
[-RunAsynchronously]
[-PROTipID <Guid>]
[-JobVariable <String>]
[-OnBehalfOfUser <String>]
[-OnBehalfOfUserRole <UserRole>]
[<CommonParameters>]
Description
Set-SCUserRole Cmdlet 會修改現有 Virtual Machine Manager (VMM) 使用者角色的設定。 您可以修改的設定取決於 VMM 使用者角色的類型。
使用者角色的類型如下所示:
VMM 系統管理員(系統管理員)
您可以將成員新增至系統管理員使用者角色,或從系統管理員使用者角色中移除成員。 您無法限制此角色成員可以管理的物件範圍。
委派管理員(DelegatedAdmin)
您可以將成員新增至委派的系統管理員使用者角色,並從中移除成員。 您可以展開或限制委派系統管理員使用者角色的範圍。 您可以授與此使用者角色許可權的成員,以管理私人雲端和主機群組中的所有物件。 您可以允許使用者管理儲存在連結庫伺服器上的所有物件。 在該架構中,您無法限制委派系統管理員使用者角色成員可執行的動作。
Read-Only 系統管理員 (ReadOnlyAdmin)
您可以將成員新增至系統管理員使用者角色,並從 Read-Only 移除成員。 您可以展開或限制 Read-Only 系統管理員使用者角色的範圍。 不過,使用者角色的成員只能檢視其指派範圍內對象的屬性、狀態和作業狀態。 它們無法修改任何物件。
Self-Service 使用者 (SelfServiceUser)
您可以將成員新增至或移除 Self-Service 使用者角色的成員。 您可以展開或限制 Self-Service 使用者角色成員的範圍和動作。 您可以授與 Self-Service 使用者角色許可權的成員,以管理私人雲端中的所有物件。 您可以授與建立虛擬機的許可權、將虛擬機儲存在虛擬機位於雲端的預存虛擬機路徑的許可權,以及使用範本物件來建立虛擬機的許可權。 在該架構中,您可以授與自助使用者可以採取的 Self-Service 使用者角色動作成員。 您也可以藉由設定套用至每個使用者或所有使用者的配額,來限制自助使用者可以建立的虛擬機數目。
您可以授與自助使用者的動作包括下列各項:
- AllowLocalAdmin。 授與虛擬機上的使用者本機系統管理員許可權。
- 作者。 撰寫虛擬機和服務範本。
- CanShare。 與其他 Self-Service 用戶共享資源。
- CanReceive。 從其他 Self-Service 使用者接收資源。
- 檢查站。 建立和管理虛擬機檢查點。
- CheckpointRestoreOnly。 只能還原檢查點。
- 創造。 僅從範本建立虛擬機和服務。
- CreateFromVHDOrTemplate。 從虛擬硬碟 (VHD) 檔案或範本建立虛擬機和服務。
- PauseAndResume。 暫停和繼續虛擬機和服務。
- RemoteConnect。 從遠端連線到虛擬機。
- 刪除。 拿掉虛擬機和服務。
- 救。 儲存虛擬機和服務。
- 關閉。 關閉虛擬機。
- 開始。 啟動虛擬機和服務。
- 停。 停止虛擬機和服務。
- 商店。 將虛擬機儲存在連結庫中。
範例
範例 1:將使用者新增至 VMM 系統管理員使用者角色
PS C:\> $UserRole = Get-SCUserRole -Name "Administrator"
PS C:\> Set-SCUserRole -UserRole $UserRole -AddMember "Contoso\User01","Contoso\User02"
第一個命令會取得名為 Administrator 的使用者角色對象,然後將該物件儲存在$UserRole變數中。
第二個命令會將 User01 和 User02 新增至系統管理員使用者角色。 這兩個使用者都是 Contoso.com 網域的成員。
範例 2:使用管線將使用者新增至系統管理員角色
PS C:\> Get-SCUserRole -VMMServer "VMMServer01.Contoso.com" | where { $_.Profile -eq "Administrator" } | Set-SCUserRole -AddMember "Contoso\User03"
此命令會從 VMMServer01 取得所有使用者角色對象、選取其配置檔為 Administrator 的使用者角色對象,然後將 User03 新增至系統管理員使用者角色。
範例 3:藉由將雲端新增至其範圍來修改現有的 Self-Service 使用者角色
PS C:\> $Cloud = Get-SCCloud -Name "Cloud02"
PS C:\> $UserRole = Get-SCUserRole -Name "ContosoSelfServiceUsers"
PS C:\> Set-SCUserRole -UserRole $UserRole -AddScope $Cloud
第一個命令會取得名為 Cloud02 的雲端對象,然後將該物件儲存在$Cloud 變數中。
第二個命令會取得名為 ContosoSelfServiceUsers 的使用者角色對象,然後將物件儲存在$UserRole配置檔中。
最後一個命令會藉由將儲存在 $Cloud 中的雲端新增至其範圍,來修改儲存在 $UserRole 中的使用者角色範圍。
範例 4:從系統管理員使用者角色移除指定的使用者
PS C:\> $UserRole = Get-SCUserRole -Name "Administrator"
PS C:\> Set-SCUserRole -UserRole $UserRole -RemoveMember "Contoso\User01"
第一個命令會取得名為 Administrator 的使用者角色對象,然後將該物件儲存在$UserRole變數中。
第二個命令會從系統管理員使用者角色中移除User01。 User01 是 Contoso.com 網域的成員。
範例 5:將雲端新增至 Self-Service 使用者角色的範圍
PS C:\> $Cloud = Get-SCCloud -Name "Cloud03"
PS C:\> Get-SCUserRole -Name "ContosoSelfServiceUsers" | Set-SCUserRole -AddScope $Cloud
第一個命令會取得名為 Cloud03 的雲端對象,然後將該物件儲存在$Cloud 變數中。
第二個命令會取得名為 ContosoSelfServiceUsers 的使用者角色對象,然後將該使用者角色對象傳遞給目前的 Cmdlet。 此 Cmdlet 會將儲存在 $Cloud 中的雲端新增至使用者角色。
範例 6:修改 Self-Service 使用者角色成員在其虛擬機上可以採取的動作
PS C:\> $UserRole = Get-SCUserRole -VMMServer "VMMServer01.Contoso.com" -Name "ContosoSelfServiceUsers"
PS C:\> Set-SCUserRole -UserRole $UserRole -Permission "Create,PauseAndResume,Stop,AllowLocalAdmin,Store"
第一個命令會取得名為 ContosoSelfServiceUsers 之 VMMServer01 上的使用者角色對象,然後將物件儲存在$UserRole變數中。
第二個命令會修改儲存在 $UserRole 中之使用者角色成員的許可權,以允許 Creation、PauseAndResume、Stop、AllowLocalAdmin 和 Store 許可權。
參數
-AddMember
指定這個 Cmdlet 新增至具有成員概念的對象的成員陣列,例如群組。 例如,此 Cmdlet 可以將一或多個 Active Directory® Domain Services 網域使用者或群組新增至使用者角色。 以下欄格式指定成員:
- 網域\使用者
- 使用者
- User@Domain
- Domain\LabGroupAlias
- LabGroupAlias
實驗室群組別名是Active Directory網域服務安全組,而不是電子郵件別名。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-AddScope
指定此 Cmdlet 新增至此使用者角色成員可以管理之物件範圍的範圍陣列。
類型: | ClientObject[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Description
指定使用者角色的描述。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-JobGroup
指定一系列命令的標識碼,這些命令會在包含相同作業群組標識符的執行的最後一個命令之前,以集合的形式執行。
類型: | Guid |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-JobVariable
指定追蹤和儲存作業進度的變數。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Name
指定使用者角色的新名稱。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-NATConnectionMaximum
類型: | UInt16 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-NATConnectionMaximumPerUser
類型: | UInt16 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-OnBehalfOfUser
指定用戶名稱。 這個 Cmdlet 代表此參數指定的用戶運作。
類型: | String |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-OnBehalfOfUserRole
指定使用者角色。 若要取得使用者角色,請使用 Get-SCUserRole Cmdlet。 這個 Cmdlet 代表此參數指定的使用者角色運作。
類型: | UserRole |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-Permission
指定 Self-Service 使用者角色成員可以在虛擬機或服務上執行的動作陣列。 有效值為:
- AllowLocalAdmin
- 作者
- CanShare
- CanReceive
- 檢查站
- CheckpointRestoreOnly
- 創造
- CreateFromVHDOrTemplate
- PauseAndResume
- RemoteConnect
- 刪除
- 救
- 關閉
- 開始
- 停
- 商店
如果您授與 CreateFromVHDOrTemplate 許可權,您也會授與 Create 許可權。 如果您授與 Checkpoint 許可權,您也會授與 CheckpointRestoreOnly 許可權。
類型: | SelfServicePermission[] |
別名: | VMPermission |
接受的值: | Create, PauseAndResume, Start, Stop, AllowLocalAdmin, RemoteConnect, Remove, Shutdown, Checkpoint, Store, Save, Author, CanShare, CanReceive, CreateFromVHDOrTemplate, CheckpointRestoreOnly, AuthorVMNetwork, CreateShielded |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-PROTipID
指定觸發此動作之效能和資源優化提示 (PRO 提示) 的識別碼。 此參數可讓您稽核 PRO 秘訣。
類型: | Guid |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveLibraryStoreSharePath
指出此 Cmdlet 會清除自助用戶的使用者角色數據路徑。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveMember
指定此 Cmdlet 從具有成員資格概念的 VMM 物件中移除的成員陣列,例如群組。 例如,此 Cmdlet 可以從使用者角色中移除一或多個 Active Directory Domain Services 網域使用者或群組。 以下欄格式指定成員:
- 網域\使用者
- 使用者
- User@Domain
- Domain\LabGroupAlias
- LabGroupAlias
實驗室群組別名是Active Directory網域服務安全組,而不是電子郵件別名。
類型: | String[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveNATConnectionMaximum
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveNATConnectionMaximumPerUser
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveScope
指定要從這個使用者角色成員可以管理的物件範圍中移除的 VMM 物件陣列。
類型: | ClientObject[] |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveVMNetworkMaximum
表示此 Cmdlet 會移除虛擬機網路上限設定。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveVMNetworkMaximumPerUser
指出此 Cmdlet 會移除每個使用者設定的虛擬機網路上限。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveVMNetworkVPNMaximumBandwidthIn
指出此 Cmdlet 會移除連入連線的虛擬專用網 (VPN) 最大頻寬設定。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveVMNetworkVPNMaximumBandwidthOut
表示此 Cmdlet 會移除連出連線的 VPN 最大頻寬設定。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveVPNConnectionMaximum
表示此 Cmdlet 會移除 VPN 連線上限設定。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RemoveVPNConnectionMaximumPerUser
表示此 Cmdlet 會移除每個用戶設定的 VPN 連線上限。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-RunAsynchronously
表示作業會以異步方式執行,讓控件立即返回命令殼層。
類型: | SwitchParameter |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-ShowPROTips
指出是否要顯示 PRO 秘訣。 此參數僅適用於 Self-Service 使用者角色。
類型: | Boolean |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-UserRole
指定此 Cmdlet 修改的使用者角色物件。 若要取得使用者角色,請使用 Get-SCUserRole Cmdlet。
類型: | UserRole |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | True |
接受萬用字元: | False |
-UserRoleDataPath
指定連結庫共用的路徑,Self-Service 使用者角色的成員可用來上傳數據。 以下列格式指定路徑:\LibraryServerName\LibraryShareName。
類型: | String |
別名: | LibraryStoreSharePath |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VMMServer
指定此 Cmdlet 修改使用者角色的 VMM 伺服器。
類型: | ServerConnection |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VMNetworkMaximum
指定使用者角色的虛擬機網路數目上限。
類型: | UInt16 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VMNetworkMaximumPerUser
指定使用者的虛擬機網路數目上限。
類型: | UInt16 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VMNetworkVPNMaximumBandwidthInKbps
針對 VPN 的連入流量,指定每秒的頻寬上限千位。
類型: | UInt64 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VMNetworkVPNMaximumBandwidthOutKbps
針對 VPN 的連出流量,指定每秒的頻寬上限千位。
類型: | UInt64 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VPNConnectionMaximum
指定 VPN 的連線數目上限。
類型: | UInt16 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
-VPNConnectionMaximumPerUser
指定 VPN 每個使用者的連線數目上限。
類型: | UInt16 |
Position: | Named |
預設值: | None |
必要: | False |
接受管線輸入: | False |
接受萬用字元: | False |
輸出
UserRole
備註
- 若要列出您可以為自助使用者指定的所有可用許可權,請輸入下列命令:
PS C:\> [enum]::GetValues([Microsoft.VirtualManager.Remoting.SelfServicePermission])