Active Directory: Mit Powershell ein Extensionattribut erweitern
Moin zusammen,
ich möchte ein Script schreiben, welches erst ein extensionAttribute10 ausgibt und dieses um einen Wert erweitert.
Zusätzlich würde ich gerne einen bestimmten Eintrag entfernen. Meine Idee war, das ganze in ein String zu stecken, am Ende zu erweitern mit Wert X und danach nach Wert Y zu suchen im String und diesen zu entfernen.
Das ist mein aktueller Code:
Testwerte:
Hat einer von euch eine Idee dazu? Gibt es vielleicht einen eleganteren Weg
ich möchte ein Script schreiben, welches erst ein extensionAttribute10 ausgibt und dieses um einen Wert erweitert.
Zusätzlich würde ich gerne einen bestimmten Eintrag entfernen. Meine Idee war, das ganze in ein String zu stecken, am Ende zu erweitern mit Wert X und danach nach Wert Y zu suchen im String und diesen zu entfernen.
Das ist mein aktueller Code:
$oldstring = @(Get-ADUser -Identity $ThisUser -Properties extensionAttribute10 | Select extensionAttribute10)
Testwerte:
$ThisUser = "Testaccount01"
@{extensionAttribute10=Computer01, Computer02}
$Erweiterung = "Computer03"
$Entfernt = "Computer01"
Hat einer von euch eine Idee dazu? Gibt es vielleicht einen eleganteren Weg
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 3853459106
Url: https://administrator.de/contentid/3853459106
Ausgedruckt am: 25.11.2024 um 18:11 Uhr
6 Kommentare
Neuester Kommentar
Moin.
Cheers
certguy
$ThisUser = "Testaccount01"
$Erweiterung = "Computer03"
$Entfernt = "Computer01"
$user = Get-ADUser -Identity $ThisUser -Properties extensionAttribute10
$newAttribute = ([string[]]($user.extensionAttribute10 -split '[,\s]+' | ?{$_ -ne $entfernt}) + $Erweiterung) -join ','
Set-ADUser $thisUser -Replace @{extensionAttribute10=$newAttribute}
Gibt es vielleicht einen eleganteren Weg
Sinniger wäre es dafür gleich ein MultiValue-Attribut im AD-Schema zu erstellen, die wurden nämlich genau für sowas geschaffen. Damit lassen sich per Set-ADUser und -Add und -Remove Parameter nämlich direkt die Items hinzufügen und entfernen, ohne das man mit einem Pseudo-Array hantieren muss.Cheers
certguy
Du hast nen Copy n Paste-Fehler ... Kopiere den Code nochmal dir fehlt das Joinen in Zeile5 !
Nix komisch... das wolltest du ja hiermit :
Ich zitiere
Einfach erst mal den Code verstehen bevor man ihn anwendet! Dann ist auch nichts komisch!!
Sind wir hier auf nem Basar oder wat?! 😂
$Entfernt = "Computer01"
Und genau das tut er Ich zitiere
Zusätzlich würde ich gerne einen bestimmten Eintrag entfernen.
Einfach erst mal den Code verstehen bevor man ihn anwendet! Dann ist auch nichts komisch!!
Sind wir hier auf nem Basar oder wat?! 😂