lordofremixes
Goto Top

ExtensionAttribute1 umschreiben

Hallo zusammen,

ich benötige leider Hilfe, und mein altes Script funktioniert nicht mehr richtig.
Simple Frage:

Ich würde gern auf einem Test AD das extensionAttribute1 für alle User in einer Unter- OU umschreiben:

bisher steht da drin: max.mustermann@domain1.com
jetzt soll da drin stehen max.mustermann@domain2.com

Also kein zusätzliches Feld, sondern nur bei dem extensionAttribute1 die Domain hinten umschreiben.

Kann mir da vielleicht jemand helfen?

LG
lordofremixes

Content-Key: 12349156404

Url: https://administrator.de/contentid/12349156404

Printed on: May 23, 2024 at 00:05 o'clock

Member: CamelCase
Solution CamelCase May 14, 2024 updated at 09:28:20 (UTC)
Goto Top
Moin

Get-ADUser -Filter * -SearchBase "HierDeineOU" -Properties ExtensionAttribute1 |   
    Where-Object {$_.ExtensionAttribute1 -like "*domain1.com"} |   
    ForEach-Object {
        $newExtensionAttribute = $_.ExtensionAttribute1 -replace "domain1.com", "domain2.com"  
        Set-ADUser -Identity $_.SamAccountName -Replace @{ExtensionAttribute1 = $newExtensionAttribute}
    }

Domains und OU entsprechend er/einsetzen.

Kamel
Member: Hubert.N
Hubert.N May 14, 2024 at 09:33:40 (UTC)
Goto Top
Moin

Klasse wäre es, wen auch das Script hier vorhanden wäre, denn dann könnte man den Fehler suchen.

Ich habe aber gerade mal meine Kristallkugel gefragt und die hat mir gesagt: Das scheitert gerade an der Tatsache, dass man das Attribut auslesen, hinzufügen und löschen kann. Aber eben nicht ändern.

Also (wie so oft) ist die Lösung ganz einfach: Attribut löschen (mit dem parameter -clear) und dann neu setzen.

Fals sich meine Kristallkugel geirrt hat: Das Script posten!

Gruß
Member: NordicMike
NordicMike May 14, 2024 at 09:52:05 (UTC)
Goto Top
Das ist doch sein Script. In Zeile 5 schreibt er die Attribute neu.
Set-ADUser $_.samAccountName -replace scheint zu ersetzen ohne löschen und neu beschreiben zu müssen.

Wir wissen jedoch noch nicht woran es scheitert. Keine Fehlermeldung, kein Ergebnis, keine Beschreibung, keine Fehlereingrenzung seitens TO
Member: CamelCase
CamelCase May 14, 2024 at 10:00:16 (UTC)
Goto Top
Zitat von @NordicMike:

Das ist doch sein Script. In Zeile 5 schreibt er die Attribute neu.

Keine Ahnung wie das alte Skript aussah, das oben ist von mir und auch getestet.

Kamel
Member: hempel
hempel May 14, 2024 at 10:06:23 (UTC)
Goto Top
Get-AdUser -LdapFilter "(extensionAttribute1=*@domain1.com)" -Searchbase "<DEINE-OU>" -Properties extensionAttribute1 | %{Set-AdUser $_.SamAccountName -Replace @{extensionAttribute1=($_.extensionAttribute1 -replace 'domain1\.com$','domain2.com')}}  

Gruß
Member: lordofremixes
lordofremixes May 14, 2024 at 10:24:14 (UTC)
Goto Top
Mega. Hat sofort funktioniert.
Besten Dank dir