Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell非Cmdlet:通过System.DirectoryServices命名空间将用户移动到新的OU_Powershell_Active Directory - Fatal编程技术网

Powershell非Cmdlet:通过System.DirectoryServices命名空间将用户移动到新的OU

Powershell非Cmdlet:通过System.DirectoryServices命名空间将用户移动到新的OU,powershell,active-directory,Powershell,Active Directory,我已登录到域Y,并且我希望移动的用户所在的广告位于域X(不带ADAM的windows 2003服务器) 如何通过System.DirectoryServices命名空间方法将用户X从一个OU移动到同一域中的另一个OU 这就是我取得的成绩: $user = [System.DirectoryServices.AccountManagement.UserPrincipal]::FindByIdentity($context, $idtype, $sam) 这里没有说明:我已经有一段时间没有QAD

我已登录到域Y,并且我希望移动的用户所在的广告位于域X(不带ADAM的windows 2003服务器)

如何通过System.DirectoryServices命名空间方法将用户X从一个OU移动到同一域中的另一个OU

这就是我取得的成绩:

$user = [System.DirectoryServices.AccountManagement.UserPrincipal]::FindByIdentity($context, $idtype, $sam)

这里没有说明:

我已经有一段时间没有QAD cmdlet或ADAM cmdlet了,因此这是未经测试的,并且是从内存中进行的,但我认为类似于:

$root = [adsi]''
$searcher = New-Object System.DirectoryServices.DirectorySearcher($root)
$searcher.Filter = "(&(ObjectClass=User)(Name=SomeUser))"
$userObject = $searcher.FindOne()
$path = $userObject.Properties.ADSPath
$targetOU = [adsi]("LDAP://OU=Target,DC=SomeDomain,DC=com")
$ADUser = [adsi]($path)
$ADUser.PSBase.moveto($targetOU)

下面是另一个解决方案:

# MoveObject
$OuDest=[ADSI] "LDAP://mach:389/ou=Commerciaux,dc=societe,dc=fr" 
$objUODest.MoveHere("LDAP://cn=Mickey,ou=Ventes,dc=societe,dc=fr", “cn=Mickey")

如果需要验证,请执行以下操作:

$OuDest = New-Object System.DirectoryServices.DirectoryEntry ("LDAP://FQDN name or @IP",$User,$password)

是的,告诉我吧,迁移Windows2003服务器只是一个空谈。然而,我一定有点不清楚,我需要通过“$user=[System.DirectoryServices.AccountManagement.UserPrincipal]::FindByIdentity($context,$idtype,$sam)”,因为我必须在2003域上登录我的SU帐户!如果执行$user.GetType(),它是什么类型的对象?”$ADUser=[adsi]($path)$ADUser.PSBase.moveto($targetOU)”您的状态没有帮助,因为我需要通过该服务器上的SU帐户进行授权。有没有办法允许我的凭据。
$OuDest = New-Object System.DirectoryServices.DirectoryEntry ("LDAP://FQDN name or @IP",$User,$password)