Frage an AD und PS Spezialisten hier drin
Hallo zusammen
Ich habe folgende Herausforderung und weis nicht wie ich das angehen soll.
Ich möchte ein Power Shell Script erstellen, das folgendes abhandelt:
Das PowerShell Script soll während einer unattended Installation mit MDT ausgeführt werden.
0 - "neue OU" = ***
1 - "Migrationsuser" = +++++
2 - Prüfung ob "localhost" (Computername) bereits im AD besteht
3 - Wenn ja, verschiebe bestehendes Konto an "neue OU" mit User "Migrationsuser"
4 - Wenn nein, join PC in Domäne in "neue OU" mit User "Migrationsuser"
Wäre super wenn Ihr mir hier unter die Arme greifen könntet.
Danke Euch bereits jetzt.
Ich habe folgende Herausforderung und weis nicht wie ich das angehen soll.
Ich möchte ein Power Shell Script erstellen, das folgendes abhandelt:
Das PowerShell Script soll während einer unattended Installation mit MDT ausgeführt werden.
0 - "neue OU" = ***
1 - "Migrationsuser" = +++++
2 - Prüfung ob "localhost" (Computername) bereits im AD besteht
3 - Wenn ja, verschiebe bestehendes Konto an "neue OU" mit User "Migrationsuser"
4 - Wenn nein, join PC in Domäne in "neue OU" mit User "Migrationsuser"
Wäre super wenn Ihr mir hier unter die Arme greifen könntet.
Danke Euch bereits jetzt.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 386814
Url: https://administrator.de/forum/frage-an-ad-und-ps-spezialisten-hier-drin-386814.html
Ausgedruckt am: 23.05.2025 um 16:05 Uhr
4 Kommentare
Neuester Kommentar

Also eigentlich kann das doch das MDT schon von Haus aus?! Naja jeder wie er kann und muss ...
Wäre super wenn Ihr mir hier unter die Arme greifen könntet.
So aus dem Stehgreif$creds = (new-Object PSCredential('MIGRATIONSUSER',(ConvertTo-SecureString 'GEHEIM' -AsPlainText -Force)))
$fqdn = 'domain.tld'
$ou = 'OU=Sub1,OU=Verwaltung,dc=domain,dc=tld'
$computerobject = (New-object adsisearcher((New-Object adsi("LDAP://$fqdn",$creds.UserName,$creds.GetNetworkCredential().Password)),"(&(objectClass=computer)(SamAccountName=$env:COMPUTERNAME$))","",'Subtree')).FindOne()
if ($computerobject){
write-host "Moving already existing computer to OU: $ou."
$computerobject.GetDirectoryEntry().MoveTo([adsi]"LDAP://$ou")
}else{
write-host "Joining computer $env:COMPUTERNAME to domain $fqdn."
Add-Computer -Credential $creds -OUPath $ou -Restart -Server $fqdn -Force -DomainName $fqdn
}