Jump to content

samid ändern bei bereits angelegten Usern


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

Empfohlene Beiträge

Danke für den Tipp.... Habe das auch schon versucht und es funktioniert echt klasse... Habe leider nun das Problem eine Access-Datenbank mit zwei Feldern auszulesen.... er kann leider nur im Moment die 1 Spalte (DN) mit dem DN für den User auslesen.Spalte 2 (Name) bleibt unbeachtet :(

Habe ich einen Fehler in der Syntax zum Setzen der Variable "Benutzername"

 

Kann mir jemand helfen??

 

Option Explicit

' Variablendeklaration

Dim DatenQuelle

Dim DBConnection, SqlString, Ergebnismenge

Dim Benutzer

' Konstanten definieren

Const Verbindung="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=c:\ADModify.NET\test.MDB;"

' Connection-Objekt erzeugen

Set DBConnection = CreateObject("ADODB.Connection")

' Connection öffnen

DBConnection.Open Verbindung

' Alle Benutzer verwenden

SqlString="SELECT * FROM Benutzer"

' SQL-Statement ausführen

Set Ergebnismenge = DBConnection.Execute(SqlString)

On Error Resume Next

' An den Anfang des Abfrageergebnisses springen

Ergebnismenge.MoveFirst

' Durchlaufe gesamte Datenbasis

Do While Not Ergebnismenge.eof

' Aufruf der Hilfsroutine

Dim User

Dim Benutzername

Dim upn

' Zugriff auf das Benutzer-Objekt

Set User = GetObject("LDAP://" &Ergebnismenge("DN"))

set Benutzername=Ergebnismenge("Name")

Set upn=(Benutzername)&"firma.de"

' Passwort ändern

User.SetPassword("Test4User")

User.SetInfo

' UPN Logon Name setzen

User.Put "userprincipalname", upn

User.SetInfo

' PRE2000 Logon Name setzen

User.Put "samAccountName", Benutzername

User.SetInfo

' Konto aktivieren

User.AccountDisabled = False

User.SetInfo

' Description setzen

User.Put "description", " "

User.SetInfo

' PW Change at Logon deaktivieren

User.Put "pwdLastSet", CLng(-1)

User.SetInfo

' PW never expires aktiveren

flag=User.Get("UserAccountControl")

newFlag=flag Or ADS_UF_DONT_EXPIRE_PASSWD

User.Put "userAccountControl", newFlag

User.SetInfo

' Nächsten Satz aus der Ergebnismenge holen

Ergebnismenge.MoveNext

Loop

' Schliessen der Abfrage

Ergebnismenge.Close

' Schliessen der Verbindung

DBConnection.Close

Link zu diesem Kommentar

Habe meinen Fehler gefunden... obwohl dieser nicht ganz einleuchtend ist. Test and Try ;-)

 

Habe die Variablen "Benutzername" und "upn" entfernt und direkt beim Setzen der Attribute gesetzt... (siehe unten)

 

' UPN Logon Name setzen

User.Put "userprincipalname", Ergebnismenge("Name")&"@firma.de"

User.SetInfo

' PRE2000 Logon Name setzen

User.Put "samAccountName", CStr(Ergebnismenge("Name"))

User.SetInfo

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