Jump to content

Benutzergruppen im AD auslesen


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

Empfohlene Beiträge

Hallo zusammen

Ich arbeite in der Gebäudeautomation mit einem Leitsystem(WinCC). Im AD gibt es drei Gruppen. Die heissen Reinigung, Maintenance, Admin.

Das ganze läuft wie folgt ab(stelle ich mir vor):

Ein User loggt sich auf dem Computer ein. Und das Leitsystem startet automatisch. Sobald dieses aufgestartet ist soll mein Skript ablaufen. Dieses soll nun die Benutzergruppe herausfinden in welcher der aktuell eingeloggte Benutzer ist. Es kann nicht sein das der Nutzer bei zwei Gruppen dabei ist. Somit stelle ich mir das ganze eigentlich nicht so wirklich kompliziert vor, wenn ich nur alle diese Befehle wüsste für das VBScript.

 

Was ich bis jetzt schon habe ist folgendes:

 

Dim strComputer
Dim objwmi
Dim collitems
Dim objitemMaint, objitemMCC, objitemSSH
Dim i
Dim test
Dim obj1, obj2, PicName
Dim objPC
Dim objWMISvc, colItems, objItem,objWMIService,Wscript,objComputer ,colSettings
Dim Echo
Dim objGroup,objMember, Domain, Group,txt
 
Set objWMISvc = GetObject( "winmgmts:\\.\root\cimv2" )
Set colItems = objWMISvc.ExecQuery( "Select * from Win32_ComputerSystem", , 48 )
For Each objItem in colItems
    strComputer = objItem.Name
Next
 
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" _
    & strComputer & "\root\cimv2")
Set colSettings = objWMIService.ExecQuery _
    ("Select * from Win32_ComputerSystem")
For Each objComputer in colSettings 
    Echo = "System Name: " & objComputer.Name & "***"
    HMIRuntime.Trace(Echo)
    Echo = "Domain: " & objComputer.Domain & "***"
    HMIRuntime.Trace(Echo)
Next
***********************************************************************************************************************************3
'Mitglieder einer Gruppe
Domain = "zrh.local"
Group="Reinigung"
Set objGroup = GetObject("WinNT://" & Domain & "/" & Group)
For Each objMember In objGroup.Members
Echo = objMember.Name
If Echo = "" Then
HMIRuntime.Trace("kein Eintrag")
Else
HMIRuntime.Trace(Echo)
End If 
 
Next
 

Am Anfang klar die Variablen, dann lese ich den Computernamen aus um dann anschließend die Domain zu ermitteln. Klappt alles soweit so gut. Nach denn vielen Sternen klappt es dann leider nicht mehr so gut. Die For-Schleife wird einfach nicht abgearbeitet. Kann dies sein das die Gruppe leer ist? Oder ist das ganze ein falscher Ansatz? Ich möchte einfach kontrollieren ob der eingeloggte Benutzer zu einer der drei Gruppen gehört. 

 

Kann mir da jemand helfen?

 

Ich danke euch schon im Vorraus

 

Beste Grüsse 

yudifudi

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!
Gast
Dieses Thema wurde für weitere Antworten geschlossen.
×
×
  • Neu erstellen...