Jump to content

WMI Win32_Product - komisches Verhalten


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo,

 

ich schreibe gerade an einem kleinen Inventarisierungs-Script.

Ausschnitt aus dem Script:

-----

Set objLocator = CreateObject("WbemScripting.SWbemLocator")

Set objService = objLocator.ConnectServer("testpc01", "root\cimv2", "domain\user", "pass")

objService.Security_.ImpersonationLevel = 3

Set Products = _

objService.ExecQuery("SELECT * FROM Win32_Product")

For each Product in Products

WScript.Echo Product.Name

Next

-----

Das ganze funktioniert super solange ich mich an dem Zielrechner als Domänen-Administrator anmelde (über ConnectServer("testpc01", "root\cimv2", "domain\user", "pass")). Melde ich mich allerdings mit einem Benutzer der der nur lokale Admin-Rechte auf dem Ziel-Rechner hat an - dann ist das Products Array leer... Er tut so als wäre keine Software installiert.

Hat jemand eine Idee woran das liegen könnte, bzw - welche Rechte ich verändern muss?

 

Danke

Link zu diesem Kommentar

Moin,

 

hast du die Fehlerbehandlung im Skript mit "on error resume next" abgeschaltet? Falls ja, kommentier das mal aus oder frag an den passenden Stellen das err-Objekt ab, damit du eine Fehlermeldung sehen kannst.

 

Läuft das Skript, wenn du die Remoteverbindung rausnimmst und es als der betreffende User lokal ausführst?

 

Gruß, Nils

Link zu diesem Kommentar

Nils,

 

ich habe die Fehlerbehandlung aus. Es kommt kein Fehler. Die WMI Abfrage gibt einfach ein leeres Array zurück...

 

Carsten,

wenn ich als lokaler Admin daraufzugreife sieht die Zeile so aus:

Set objService = objLocator.ConnectServer("testpc01", "root\cimv2", "meinedomain\usermitlokalenadminrechten", "pass")

 

Dieser Benutzer ist schon ein Benutzer der Domain - allerdings ist er kein Domain-Admin, aber er ist Mitglied der lokalen Administrator Gruppe - das sollte ja reichen. Wenn ich den Domain-Admin nehme geht es ja komsicherweise. Ich will den Domain-Admin aber nicht nehmen ;-)

 

Was noch komisch ist: Wenn ich die Authentifizierung im Script selber weglasse - also einfach:

Set objService = objLocator.ConnectServer("testpc01", "root\cimv2")

und das Script dann als der Benutzer mit dem es vorhin nicht ging ausführe - dann gehts...

 

Kann ich aber in der Endlösung nicht verwenden weil ich verschiedene Benutzer/Kennwörter habe, welche für die Inventarisierung in das Script dynamisch eingesetzt werden sollen.

 

Dieses Problem macht mich noch verrückt.

Link zu diesem Kommentar
Kann ich aber in der Endlösung nicht verwenden weil ich verschiedene Benutzer/Kennwörter habe, welche für die Inventarisierung in das Script dynamisch eingesetzt werden sollen.

Zwar eigentlich weg vom Thema, aber: WARUM? Im Normalfall nehm ich dafür nen allgemeingültigen User, der auf allen Maschinen darf und gut.

 

Dieser Benutzer ist schon ein Benutzer der Domain - allerdings ist er kein Domain-Admin, aber er ist Mitglied der lokalen Administrator Gruppe

Direkt oder über eine Domänengruppe?

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...