Powershell out-gridview
Hallo Zusammen,
ich versuche über PS die Rechte zweier User zu vergleichen und anschließend mir per Gridview jene herauszupicken, die UserB letzendlich haben soll.
Hier soweit der Code:
$CopyFromUser = get-aduser userA -prop memberof
$CopyToUser = get-aduser userB -prop memberof
$MissingGroups = compare-object $CopyFromUser $CopyToUser -property memberof | ? sideindicator -eq '>='
$GroupsObj = $MissingGroups.MemberOf | get-adgroup -prop description | select name,description
$GroupsObj | out-gridview -passthru | add-adgroupmember -members $CopyToUser
Beim Ausführen komme ich bis zur Auswahl im Gridview.
Nach der Weitergabe der Objekte erhalte ich jedoch folgende Fehlermeldung:
Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
Hat jemand eine Idee wo mein Fehler liegt?
Vielen Dank im Voraus für eure Hilfe!
ich versuche über PS die Rechte zweier User zu vergleichen und anschließend mir per Gridview jene herauszupicken, die UserB letzendlich haben soll.
Hier soweit der Code:
$CopyFromUser = get-aduser userA -prop memberof
$CopyToUser = get-aduser userB -prop memberof
$MissingGroups = compare-object $CopyFromUser $CopyToUser -property memberof | ? sideindicator -eq '>='
$GroupsObj = $MissingGroups.MemberOf | get-adgroup -prop description | select name,description
$GroupsObj | out-gridview -passthru | add-adgroupmember -members $CopyToUser
Beim Ausführen komme ich bis zur Auswahl im Gridview.
Nach der Weitergabe der Objekte erhalte ich jedoch folgende Fehlermeldung:
Das Eingabeobjekt kann an keine Parameter des Befehls gebunden werden, da der Befehl keine Pipelineeingaben akzeptiert oder die Eingabe und deren Eigenschaften mit keinem der Parameter übereinstimmen, die Pipelineeingaben akzeptieren.
Hat jemand eine Idee wo mein Fehler liegt?
Vielen Dank im Voraus für eure Hilfe!
Please also mark the comments that contributed to the solution of the article
Content-Key: 665520
Url: https://administrator.de/contentid/665520
Printed on: April 26, 2024 at 10:04 o'clock
2 Comments
Latest comment
Moin,
wenn du mal in die Doku geschaut hättest dann hättest du dort unter Input gesehen das der Befehl nur ein ADGroup-Object über die Pipeline akzeptiert, du ja aber nur ein CustomObject lieferst weil du via Select nur bestimmte Eigenschaften selektierst, ergo meckert die Shell genau dies als Fehler an.
https://docs.microsoft.com/en-us/powershell/module/addsadministration/ad ...
Da die Shell dann nicht weiß was sie als Gruppen-Identifier nehmen soll musst du es ihr explizit sagen ...
Des weiteren
Gruß w.
wenn du mal in die Doku geschaut hättest dann hättest du dort unter Input gesehen das der Befehl nur ein ADGroup-Object über die Pipeline akzeptiert, du ja aber nur ein CustomObject lieferst weil du via Select nur bestimmte Eigenschaften selektierst, ergo meckert die Shell genau dies als Fehler an.
https://docs.microsoft.com/en-us/powershell/module/addsadministration/ad ...
Da die Shell dann nicht weiß was sie als Gruppen-Identifier nehmen soll musst du es ihr explizit sagen ...
$GroupsObj | ogv -passthru | %{add-adgroupmember $_.Name -members $CopyToUser}
Des weiteren
? sideindicator -eq '>='
Du meinst wohl eher '<=', denn das was du da angibst gibt es nicht als Sideindicator.Gruß w.