以系统身份运行 PowerShell 并指定域加入凭据时加入域

以系统身份运行 PowerShell 并指定域加入凭据时加入域

我有一台需要加入域的工作组计算机。我可以使用已安装的 RMM 工具以系统身份访问计算机上的 PowerShell。但每当我尝试从系统帐户添加计算机时,都会出现错误。我的想法是它应该可以工作,因为系统是一个提升帐户。其他提升功能似乎运行良好。

我将域管理员凭据存储在 $cred 中,然后尝试以下操作:

[System.Security.Principal.WindowsIdentity]::GetCurrent().Name NT AUTHORITY\SYSTEM

Add-computer -domainname domain.com -Credential $cred -restart -force

Add-Computer: Computer 'hostname' failed to join domain 'domain.com' from its current workgroup 'WORKGROUP' with following error message:

A device attached to the system is not functioning.

有人有建议吗?

答案1

您不能使用 SYSTEM 帐户将计算机加入 Active Directory。是的,SYSTEM(也称为本地系统)可以执行与本地服务相反的网络操作,但是它使用计算机对象(hostname$)的凭据对 Active Directory 进行身份验证,但是在您的例子中,该对象不存在,因为该计算机首先没有加入域。

现在我明白了,您正在传递允许域管理员的凭据以执行加入操作,但命令仍在 SYSTEM 上下文中执行。我的猜测是,由于域计算机在计算机和域之间创建了安全通道,并且 SYSTEM 代表计算机对象,因此它无法完全完成加入操作,因为它正在尝试在计算机上进行自我更改。

另一件需要考虑的事情是,如果您在加入操作之前重命名了计算机,那么您必须在命令中指定其他选项。

Add-Computer -DomainName domain.here -Options JoinWithNewName,AccountCreate -Credential (Get-Credential) -Restart

相关内容