Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Vbs - Gruppenmitgliedschaften eines Users auslesen?

Frage Entwicklung Batch & Shell

Mitglied: AlbertMinrich

AlbertMinrich (Level 2) - Jetzt verbinden

12.02.2012 um 22:13 Uhr, 9349 Aufrufe, 2 Kommentare

Hallo,

ich lese per vbs die Gruppenmitgliedschaften eines Users aus.
Eigentlich so:

01.
Set objitem = GetObject("LDAP://CN=meinuser,OU=meinou,DC=meindomaene,DC=lo") 
02.
 
03.
for each objGroup in objitem.memberof 
04.
	Set objGroup = GetObject("LDAP://" & objGroup) 
05.
	wscript.echo objgroup.cn 
06.
next
Das funktioniert auch, aber nur bei den Usern, die mindestens in zwei Gruppen sind. Ist der User nur in einer, kommt diese Meldung:
"Laufzeitfehler in Microsoft VBScript: Das Objekt ist keine Auflistung"

Bei diesen Usern funktioniert dagegen das hier:
01.
wscript.echo objitem.memberof
Jetzt wiederum kommt dieser Fehler, wenn ein User in mehr als einer Gruppe ist:
"Laufzeitfehler in Microsoft VBScript: Typen unverträglich"

Wie krieg ich vorher raus, in wievielen Gruppen der User ist?
Ich weiss, ich könnte es über "error resume next" und Abfrage der err.number machen, aber schön ist das nicht.

Geht´s anders?

Danke
Gruß
AlbMin
Mitglied: bastla
12.02.2012 um 23:16 Uhr
Hallo AlbertMinrich!

Frag doch vorweg, ob es sich um ein Array handelt:
01.
Set objitem = GetObject("LDAP://CN=meinuser,OU=meinou,DC=meindomaene,DC=lo") 
02.
Groups = objItem.memberof 
03.
 
04.
If IsArray(Groups) Then 
05.
    For Each Group In Groups 
06.
        WScript.Echo GetObject("LDAP://" & Group).cn 
07.
    Next 
08.
Else 
09.
    WScript.Echo GetObject("LDAP://" & Groups).cn 
10.
End If
Andere Ansätze gäbe es noch im Script Center oder bei Richard L Mueller ...

Grüße
bastla
Bitte warten ..
Mitglied: AlbertMinrich
13.02.2012 um 08:52 Uhr
Zitat von bastla:
Hallo AlbertMinrich!

Frag doch vorweg, ob es sich um ein Array handelt:
01.
Set objitem = GetObject("LDAP://CN=meinuser,OU=meinou,DC=meindomaene,DC=lo") 
02.
> Groups = objItem.memberof 
03.
>  
04.
> If IsArray(Groups) Then 
05.
>     For Each Group In Groups 
06.
>         WScript.Echo GetObject("LDAP://" & Group).cn 
07.
>     Next 
08.
> Else 
09.
>     WScript.Echo GetObject("LDAP://" & Groups).cn 
10.
> End If 
11.
> 

Tja, so einfach, wenn mans weiss.
Danke. Funktioniert einwandfrei.

Gruß
AlbMin
Bitte warten ..
Ähnliche Inhalte
Windows Userverwaltung
gelöst Gruppenmitgliedschaft einer AD Gruppe per cmd auslesen (2)

Frage von RamboJay zum Thema Windows Userverwaltung ...

Windows Server
gelöst Account-Sperrungen eines AD-Users auslesen (2)

Frage von MissJones zum Thema Windows Server ...

Entwicklung
Zählerstände über SNMP und VBS auslesen (4)

Frage von motofuzy zum Thema Entwicklung ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(3)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
SAN, NAS, DAS
MSA 2050 RAID Konfig (20)

Frage von Leo-le zum Thema SAN, NAS, DAS ...

Hosting & Housing
CNAME auf FTP funkt nicht mehr (7)

Frage von Wintektiv zum Thema Hosting & Housing ...