itimation
Goto Top

WMI und benötigte Rechte?!

Wie gebe ich WMI "Rechte" mit?

Hallo erstmal,

ich bin Auszubildender, und habe die Aufgabe erhalten mich kundig zu machen, wie man mit Hilfe von WMI eine Inventarisierung realisieren kann. Dazu muss ich als erstes wissen, wie man Berechtigungen mit WMI handhabt, damit das Script was ich zu schreiben habe überhaupt die Rechte in unserer Domäne besitzt um die Rechner abzufragen.

(kann sein daß ich da oben ziemlichen Mist geschrieben habe, habe leider noch keinerlei Erfahrung mit dem Thema und beschäftige mich seit eben gerade erst damit. Bin seit Stunden auf der Suche nach einem guten (und günstigen) Buch zu dem Thema WMI, und Hilfen im Internet, binaber bisher leider noch nicht fündig geworden. Vor allem über Buchvorschläge wäre ich sehr glücklich!!)

Danke und Gruß,
Imation face-smile

Content-Key: 5745

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

Ausgedruckt am: 28.03.2024 um 13:03 Uhr

Mitglied: Sascha15
Sascha15 18.01.2005 um 15:42:11 Uhr
Goto Top
Hallo,
Du brauchst lokale administrative Rechte für die betroffenen Computer.
Falls Du bei einem Windows2000 Pro PC angemeldet bist, probier mal zum Anfang:
Systemsteuerung > Verwaltung > Komputerverwaltung > Rechte Maustaste auf erste Zeile Computerverwaltung (lokal) > Verbindung zum anderen Computer herstellen...

dann wähls du ein Computer aus Domäne und schaust seine Geräte und Systemübersicht, also Info für Hardwareinventarisierung. (kannst du auch ausdrucken). Setzt natürlich die Administrator account voraus.
MfG
Sascha15
Mitglied: Itimation
Itimation 18.01.2005 um 16:36:42 Uhr
Goto Top
So, ich habe mich nun ein wenig belesen, und kann evtl. meine Frage noch spezifischer stellen face-smile
(hoffe ich zumindest)

Ein kleines Script, um sich den Arbeitsspeicher von einer Maschine anzeigen zu lassen:

'Arbeitsspeicher von dem Rechner "strComputer" anzeigen lassen
'_____________________________________________________________


strComputer = "Rechnername" 'Der Rechner dessen RAM angezeigt werden soll
Set wbemServices = GetObject("winmgmts:\\" & strComputer)
Set wbemObjectSet = wbemServices.InstancesOf("Win32_LogicalMemoryConfiguration")
For Each wbemObject In wbemObjectSet
WScript.Echo "Gesamter physischer Speicher (KB): " & wbemObject.TotalPhysicalMemory
Next

'_______________________________________________________________

So, wenn ich nun oben (strComputer) meinen Rechnername angebe, funktioniert es wunderbar.
Wenn ich nun einen Rechner angebe, auf dem ich keine Admin-Rechte habe, funktioniert es nicht. Und was ich bräuchte, wäre die Möglichkeit, oben dem Script einen Benutzernamen+Passwort mitzugeben, mit dem es sich dann bei dem/den Rechner(n) meldet und Daten (in diesem Fall die Größe des Arbeitsspeichers) abfragt.

Ist das möglich, und wenn (*bete*) wie?
face-smile
Hoffe es war verständlich, schonmal vielen Dank!
Imation
Mitglied: Itimation
Itimation 26.01.2005 um 07:56:27 Uhr
Goto Top
Hat denn keiner mal damit gearbeitet oder Ahnung davon? face-sad(

Bräuchte da dringend ratschlag, oder Alternativen ;)
Mitglied: Sascha15
Sascha15 26.01.2005 um 08:16:13 Uhr
Goto Top
Hallo,
lässt Dir den Domänen-Administrator Passwort verraten. (mind. vorübegehend, nur zum einmaligen Abfragen).
Gruß
Sascha
Mitglied: Itimation
Itimation 27.01.2005 um 13:19:59 Uhr
Goto Top
Gut, aber wie gebe ich dem Script die Administrator Rechte (bzw. Name/Password) mit??

Es soll dann ja immer mal wieder (jede Nacht z.B.) laufen, und alle Server abfragen, und da kann sich ja keiner als Domänen Admin anmelden, das Script anstarten und wieder heim ins Bett verschwinden ;)
Mitglied: Sascha15
Sascha15 27.01.2005 um 14:55:23 Uhr
Goto Top
Warum nicht?
Str-Alt-Del > Computer sperren und ab nach Hause ins Bettchen! (alternativ - Bildschirmschoner mit Passworteingabe).
Und was willst Du eigentlich inventarisieren? Oben schreibst Du - Rechner oder doch die Server? Für die Server gibts es Hersteller-Tools...
Mitglied: peer-g
peer-g 31.01.2005 um 12:21:16 Uhr
Goto Top
Hi,

wenn Du sowas machst, solltest Du Domain-Admin sein. Damit hast Du zugriff auf alle Rechner. WMI wird dann auch uneingeschränkt laufen. Es sei denn Du hast Win98, ME drauf. Dann musst Du noch ein WMI Plugin bei MS ziehen um dies zu ermöglichen.
Wie man dem Script das Passwort mit auf den Weg gibt weiss ich nicht. Keine Ahnung ob das überhaupt geht.

Es gibt sehr wenige Bücher auf dem Markt. Leider.
Zwei kann ich Dir mit auf den Weg geben:

ISBN: 3-8245-3823-7 (Deutsch)
ISBN: 0-3212-1334-3 (Englisch)

Das Englische ist super. Es enhält zudem eine Einführung in VBS. Meine Empfehlung.

Gruß,
Andy
Mitglied: Xaero1982
Xaero1982 06.04.2006 um 10:35:39 Uhr
Goto Top
Ist zwar schon nen alter Beitrag, aber es geht:

und zwar so :

Const WbemAuthenticationLevelPktPrivacy = 6

strComputer = "XXXXXX"  
strNamespace = "root\cimv2"  
strUser = "ADMINISTRATOR" 'domäne\admin   
strPassword = "ADMINPW"  

Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator")  
Set objWMIService = objwbemLocator.ConnectServer _
    (strComputer, strNamespace, strUser, strPassword)
objWMIService.Security_.authenticationLevel = WbemAuthenticationLevelPktPrivacy

Set colItems = objWMIService.ExecQuery _
    ("Select * From Win32_OperatingSystem")  
For Each objItem in ColItems
    Wscript.Echo strComputer & ": " & objItem.Caption  
Next
Mitglied: reichi
reichi 14.11.2007 um 11:20:11 Uhr
Goto Top
Wer seinen WMI-Benutzer nicht gleich mit allmächtigen Domainadmin-Rechten ausstatten möchte, kann einen Domänenuser anlegen, und diesem dann auf allen Rechnern die lokalen Gruppenzugehörigkeiten HAUPTBENUTZER und Distributed COM Benutzer einrichten. Das Kann entweder manuell auf jedem Rechner erfolgen, oder auch per Gruppenrichtlinie vom DC aus geschehen. Dann muss diesem User auf den zu überwachenden Rechnern noch gestattet werden, auf die WMI zuzugriefen start --> ausführen --> wmimgmt.msc --> WMI-Steuerung --> Eigenschaften --> Sicherheit --> Root anklicken --> Button Sicherheit klicken --> Hinzufügen. Danach dem User folgende Berechtigungen erteilen: Konto aktivieren, Remoteaktivierung.
Willst Du auch Methoden verschiedener WMI-Klassen ausführen, dann muss auch bei Methoden ausführen ein Häkchen gemacht werden.

So, das ist die relativ komplizierte, jedoch sehr viel sicherere Variante, das ganze zu konfigurieren. Viel Schweiß und Tränen hat diese Erkenntnis verursacht!
Mitglied: thhaeger
thhaeger 07.10.2008 um 14:06:24 Uhr
Goto Top
hallo Reichi,

habe deinen tipp ausprobiert. habe den User in die lokale Gruppe des haupbenutzers hinzugefügt und den User in die Builtin\Distributed Com benutzer hinzugefügt.

leider funktioniert die WMI Afrage nicht.

Wenn man den User in die Gruppe der Administratoren hinzufügt, kein Problem, aber genau das möchte ich nicht.

Kanstt du mir eine Tipp geben, wie Du das gemacht hast. vielleicht habe ich nur einen kleinen Denkfehler?

wäre super

Gruß
Thom