Jump to content

vbs - distinguishedName aus ADS 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,

 

schon seit tagen bin ich auf der suche nach hilfe zu einem, fuer manche, recht einfachen Problem.

 

Ich muss aus der ADS per VBScript einige Userdaten auslesen.

 

Jedoch habe ich lediglich den Logonnamen des entsprechend per InputBox genannten Users sowie den kompletten Namen der Anmeldedomäne zur Verfügung.

 

Sinn und Zweck:

Einem neu angelegten User soll per Skript der FullName auf den DisplayName sowie einige Gruppen zugewiesen werden.

 

Kann mir jemand dabei helfen ??

 

/Taleen

Link zu diesem Kommentar

bisher hab ich ein paar codeschnipsel zusammen bekommen:-/

 

strUserName = InputBox("sAMAccountName ? ", "Benutzername", "", 200, 300)
dtStart = TimeValue(Now())

Set objRoot = GetObject("LDAP://rootDSE")
strDomain = objRoot.Get("DefaultNamingContext") 

do
Set objConnection = CreateObject("ADODB.Connection")
objConnection.Open "Provider=ADsDSOObject;"

Set objCommand = CreateObject("ADODB.Command")
objCommand.ActiveConnection = objConnection

objCommand.CommandText = _
   "<LDAP://" & strDomain & ">;(&(objectCategory=User)" & _
      	 "(samAccountName=" & strUserName & "));samAccountName;subtree"

Set objRecordSet = objCommand.Execute

If zaehlerad = 100 Then
	Exit Do
End If

zaehlerad = zaehlerad + 1

WScript.Sleep (1200)

Loop Until Not objRecordSet.RecordCount =  0

 

so bekomme ich zumindestens mal die anzeige ob der vorgegebene logonname in der ADS vorhanden ist.

problem ist halt nur das ich lediglich die anzahl der gefundenen logonnamen bekomme jedoch keine weiteren infos

hinzu kommt das ich nicht gerade der beste vb scripter bin :-(

Link zu diesem Kommentar

Hallo Taleen,

Wenn du eh noch nicht der grosse VBS-Skripter bist, dann machs doch mit der Powershell. Da bekommst du deine Wünsche in wenigen einfachen Zeilen hin:

 

Allerdings musst du vorher noch die Quest-Cmdlets installieren

PowerShell Commands for Active Directory Quest Software

 

und registrieren mit

Add-Pssnapin quest.activeroles.admanagement

am besten dauerhaft in dieser PS-Profildatei %windir%\system32\WindowsPowerShell\v1.0\profile.ps1

 

ab dann wirds easy:

Bestimmen des Distingishednames

(get-qaduser domaene\username).distinguishedname

 

Setzen des Displaynames

set-qaduser 'domaene\username' -displayname "karl-otto"

 

Gruppen kannst du mit dem cmdlet Add-QADGroupMember zuweisen. Hilfe und Beispiele kannst du z.B. mit

 

get-help Add-QADGroupMember -examples
get-help *qad*

 

erhalten.

 

 

wenn's unbedingt noch in vbs sein muss, dann sieh dir das MS-ScriptRepository unter Welcome to the Script Center an. Da findest du sicherlich Beispiele.

 

cu

blub

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...