Tipp 4.6 - User Kennwort

Wie kann ich das Kennwort eines Benutzers verändern?

Mit dieser Funktion können Sie das Kennwort eines Benutzers verändern. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.

Beispiel:

Option Explicit
 
Public Function A2XSetUserPsw(psWrk As String, _
                              psUser As String, _
                              psOldPass As String, _
                              psNewPass As String) _
                              As Boolean
  '// =====================================================
  '// Methode   | Verändert das Kennwort eines Users!
  '             | Es ist unrelevant, ob Sie das Kennwort
  '             | kennen
  '// -----------------------------------------------------
  '// Parameter | psWrk     - Name des Workspaces oder
  '                           Leerstring für den aktuellen
  '               psUser    - Name des Benutzers
  '               psOldPass - Altes Kennwort
  '               psNewPass - Neues Kennwort
  '// -----------------------------------------------------
  '// Rückgabe  | Boolean - OK = erfolgreich etc.
  '// -----------------------------------------------------
  '// Erstellt  | Manuela Kulpa
  '//           | EDV Innovation & Consulting - Dormagen
  '// -----------------------------------------------------
  '// Beispielaufruf:
  '// ?A2XSetUserPsw("", "Sonne", "Sommer", "Winter")
  '// =====================================================
 
  Dim wrk As DAO.Workspace
  Dim usr As DAO.User
  Dim bOK As Boolean
 
  On Error GoTo A2XSetUserPsw_Error
 
  ' Initialisieren
  bOK = False
 
  ' Workspace setzen
  If psWrk = "" Then
    Set wrk = DAO.DBEngine.Workspaces(0)
  Else
    Set wrk = DAO.DBEngine.Workspaces(psWrk)
  End If
 
  ' User setzen
  Set usr = wrk.Users(psUser)
 
  ' Kennwort verändern
  usr.NewPassword psOldPass, psNewPass
 
  bOK = True
 
A2XSetUserPsw_Exit:
  On Error GoTo 0
  A2XSetUserPsw = bOK
  Exit Function
 
A2XSetUserPsw_Error:
  Select Case Err.Number
  Case Else
    MsgBox "Fehler " & Err.Number & ": " & _
           Err.Description, vbCritical, _
           "modSecure.A2XSetUserPsw"
  End Select
  Resume A2XSetUserPsw_Exit
 
End Function