pixel0815
Goto Top

Powershell AD Changes überwachen

Servus zusammen,

folgende zwei Module finde ich super genial, aber ich hab da so meine Probleme damit.

http://gallery.technet.microsoft.com/scriptcenter/Monitor-Changes-in-Ac ...
http://gallery.technet.microsoft.com/scriptcenter/Monitor-Changes-in-Ac ...

Per Import-Module kann ich beide psm1 Dateien hinzufügen.

Wenn ich aber wie Beschrieben im zweiten Link folgendes Skript ausführen möchte um die Datenbasis zum Vergleichen der Änderungen zu erstellen
$searchRequest = New-Object System.DirectoryServices.Protocols.SearchRequest($Root, $Query, $searchScope, $null) 
$dirSyncRequest = New-Object System.DirectoryServices.Protocols.DirSyncRequestControl($cookieContent, [System.DirectoryServices.Protocols.DirectorySynchronizationOptions]::IncrementalValues, [System.Int32]::MaxValue) 
$searchRequest.Controls.Add($dirSyncRequest) | Out-Null

erhalte ich eine Meldung mit der ich momentan noch nichts anfangen kann.

New-Object : Für "SearchRequest" und die folgende Argumenteanzahl kann keine Überladung gefunden werden: "4".  
In Zeile:1 Zeichen:18
+ $searchRequest = New-Object System.DirectoryServices.Protocols.SearchRequest($Ro ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [New-Object], MethodException
    + FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand

Ebenso funktionieren dann natürlich alle anderen Commandos nicht und ich kann kein erfolgreichen get-adchanges Befehl abstoßen.
Wer kann hier helfen?

Wir haben eine 2012 R2 Domäne. Liegt es eventuell an dem R2?


Lg
Heiko

Content-Key: 248665

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

Printed on: April 19, 2024 at 13:04 o'clock

Member: colinardo
colinardo Sep 09, 2014 updated at 07:01:41 (UTC)
Goto Top
Moin Heiko,
die Meldung ist eindeutig, entweder hast du die Variablen der Parameter nicht definiert, ich sehe hier in deinem Script zumindest nicht wo und mit welchen Werten du diese initialisiert hast, oder ein oder mehrere deiner Parameter entsprechen nicht den Vorgaben oder dem geforderten Typ der Klasse, siehe System.DirectoryServices.Protocols.SearchRequest

Grüße Uwe
Member: pixel0815
pixel0815 Sep 09, 2014 at 07:03:20 (UTC)
Goto Top
Parameter? Hmm.. Ich glaub ich bin zu blöde dafür :o(
Member: colinardo
colinardo Sep 09, 2014 at 07:06:12 (UTC)
Goto Top
Zitat von @pixel0815:

Parameter? Hmm.. Ich glaub ich bin zu blöde dafür :o(
der war gut face-smile
na diese Variablen der ersten Zeile:
$Root, $Query, $searchScope
die müssen schon den richtigen Inhalt haben, sonst weis das Objekt ja garnicht wo und wonach es suchen soll face-wink
Member: colinardo
Solution colinardo Sep 09, 2014 updated at 08:29:43 (UTC)
Goto Top
aber das was unter dem zweiten Link als Code steht ist für dich nicht relevant.
Denn wenn du das Modul geladen hast wird nur das CMDLet Get-AdChanges benötigt Das das ausführt was du hier versuchst manuell zu machen face-wink
Auf der Seite wird nur die Funktionsweise des CMDLets diskutiert.
Member: pixel0815
pixel0815 Sep 09, 2014 at 08:29:46 (UTC)
Goto Top
Es geht :O .. Jetzt funktioniert es, und ich weiß nicht warum. Bin happy