在Hyper-v 2016中远程使用Move-VM所需的权限

时间:2018-09-03 07:41:47

标签: powershell hyper-v windows-server-2016

我正在尝试远程运行PowerShell命令“ move-vm”,但出现了我似乎无法克服的权限错误。

我的move-vm命令如下:

move-vm -ComputerName SorceHost -Name $vm.name -DestinationHost $DestHost -IncludeStorage -DestinationStoragePath d:\vms -DestinationCredential $cred -Credential $cred

我正在定义这样的凭据

$username = ".\PSAPIUser"
$password = Get-Content 'C:\key\PSAPIAUTH.txt' | ConvertTo-SecureString
$cred = new-object -typename System.Management.Automation.PSCredential `
     -argumentlist $username, $password

源和目标都在同一个AD域上,并且我已经为此功能专门创建了一个域管理员帐户。我已将域管理员组添加到源主机和目标主机上的本地组“ Hyper-V管理员”“管理员”。当我发出命令时,我得到:

move-vm : You do not have the required permission to complete this task. Contact the administrator of the authorization policy for the computer 'SourceHost'.

关于如何在2012年执行此操作的文章很多,但是据我了解,由于授权管理器的贬值,该过程在2016年发生了重大变化。

有人在如何配置权限以允许在2016年专门使用PowerShell进行远程Hyper-V管理方面有任何经验吗?

谢谢。

编辑:

$cred = Get-Credential

$cred

UserName                                     Password
--------                                     --------
PSAPIuser@domain.net System.Security.SecureString

move-vm : You do not have the required permission to complete this task. Contact the administrator of the authorization policy for the computer

1 个答案:

答案 0 :(得分:-1)

远程管理Hyper-V使用的是“约束委派”。想象一下场景。

您在主机Man1上,并且您正在向Hyp-001发出命令以将VM移至Hyp-002。因此,您有Man1向Hyp-001发出命令,这很好,因为它可以使用您的凭据,但是当Hyp-001将命令传递给Hyp-002时,它没有凭据可以传递,因此会出现错误

move-vm : Virtual machine migration operation failed at migration source.
Failed to establish a connection with host 'ng2-vps-011.hyperslice.net': No credentials are available in the security package

要解决此问题,您需要授予特定权限,以允许主机在AD委托中彼此运行特定服务。

在PowerShell中,它看起来像这样:

Set-ADObject -Identity $HostDeetsArra.Disname -ADD @{"msDS-AllowedToDelegateTo"="$service1/$Disname","$Service1/$HostName"} 
#$disnam = distignushed name, $Service1 is the service 'cifs' $hostanme is the FQDN

2016年,您还需要以下内容:

Set-ADAccountControl -Identity $HostDeetsArra.Disname -TrustedToAuthForDelegation $true

我的信息来源如下

https://www.altaro.com/hyper-v/free-powershell-script-configure-constrained-delegation-hyper-v/