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

Geschrieben

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

Geschrieben

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 :-(

Geschrieben

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

Geschrieben

moin Blub,

 

erstmal besten dank fuer die hilfe.

Ich werd mir Powershell heute mal ansehen.

Hab gerade die "Schulungsunterlagen" von Microsoft dazu gefunden.

Sollte ich noch weitergehende Fragen dazu haben werd ich dich wieder belaestigen *g*

 

Gruesse

Taleen

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

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...