Authentication VBScript错误424在系统帐户下运行脚本时需要对象

Authentication VBScript错误424在系统帐户下运行脚本时需要对象,authentication,vbscript,adsi,Authentication,Vbscript,Adsi,我正在尝试将域用户帐户添加到本地组,如果我登录到计算机,一切正常,但如果我在系统帐户下运行相同的脚本,则会失败,错误为:424 Object Required”。以下是代码: Dim domain : domain = "DOMAIN01" Dim domainController: domainController = "99.139.151.102" Dim localComputer : localComputer = "SERVER001"

我正在尝试将域用户帐户添加到本地组,如果我登录到计算机,一切正常,但如果我在系统帐户下运行相同的脚本,则会失败,错误为:424 Object Required”。以下是代码:

Dim domain          : domain           = "DOMAIN01"
Dim domainController: domainController = "99.139.151.102"
Dim localComputer   : localComputer    = "SERVER001"
Dim localGroup      : localGroup       = "LocalGroup1"
Dim domainAccount   : domainAccount    = "User1"
Dim objLocalGroup
Dim objDomainUser

Set objLocalGroup = GetObject("WinNT://" & localComputer    & "/" & localGroup    & ",group")
Set objDomainUser = GetObject("WinNT:").OpenDSObject("WinNT://" & domain & "/" & domainController & "/" & domainAccount, domainAccount, "Password1234", ADS_SECURE_AUTHENTICATION or ADS_SERVER_BIND)

  'Add domain user to local group.
  objLocalGroup.Add(objDomainUser.ADsPath)

  If Err.Number <> 0 Then
       WScript.Echo Err.Number
       WScript.Echo Err.Description
  Else
       WScript.Echo domainAccount & " has been added to local group " & localGroup
  End If
Dim域:domain=“DOMAIN01”
Dim domainController:domainController=“99.139.151.102”
Dim localComputer:localComputer=“SERVER001”
Dim localGroup:localGroup=“LocalGroup1”
Dim domainAccount:domainAccount=“User1”
Dim objLocalGroup
暗色objDomainUser
设置objLocalGroup=GetObject(“WinNT://”&localComputer&“/”&localGroup&“,group”)
设置objDomainUser=GetObject(“WinNT:”).OpenDSObject(“WinNT:/”&domain&“/”&domain&“/”&domainController&“/”&domainAccount、domainAccount、“Password1234”、ADS\u安全认证或ADS\u服务器\u绑定)
'将域用户添加到本地组。
objLocalGroup.Add(objDomainUser.ADsPath)
如果错误号为0,则
WScript.Echo错误号
WScript.Echo错误描述
其他的
WScript.Echo domainAccount&“已添加到本地组”&本地组
如果结束

谢谢

系统帐户不允许连接到其他主机。请以具有本地管理员权限的用户身份运行脚本。

这就是我传递凭据的原因。它在系统帐户下运行,但与其他凭据连接。请参阅:@Max在那篇文章中,您看到了什么内容?”使用显式凭据时,系统可以访问其他主机"? 本地系统帐户是本地的。不要把它用于这种任务。相反,使用网络服务或创建一个专用的本地管理员帐户。我只是说,不管您在哪个帐户下运行您的进程,重要的是您传递给DC的凭据,以便您可以访问其AD对象。我对Active Directory/ADSI/LDAP不太熟悉,因此我必须考虑您的建议并对其进行测试。我刚刚意识到,上面的错误发生在尝试使用不同AD站点中的DC进行身份验证的服务器上。它与系统帐户无关。我敢打赌,这个问题与RODC有关。做更多的测试…我认为问题在于密码复制…实际上不是问题,而是安全特性。我们不允许将用户密码复制到RODC,如果他们是管理员或其他受保护的帐户,我们会专门阻止它。我认为ZDC实际上是代表用户向BDC发送登录请求的代理,所以实际上服务器正确地报告BDC最终是它的登录服务器。