If this has happened, then you might find this little snippet useful:
Code: Select all
Sub OnClientValidatePassword(oAccount, sPassword)
testUserName = "user@example-domain.com"
testUserPass = "somePassword"
ldapServer = "192.168.0.1/cn=Users,DC=example-domain,DC=com"
sRoot = "LDAP://" & ldapServer
Set dso = GetObject("LDAP:")
On Error Resume Next
Set ou = dso.OpenDSObject(sRoot, oAccount.ADUsername, sPassword, 77)
rem For the last parameter, have a look at:
rem https://docs.microsoft.com/de-de/windows/win32/api/iads/ne-iads-ads_authentication_enum
rem Other methods:
rem Set ou = dso.OpenDSObject(sRoot, testUserName, testUserPass, 77) for testing
rem Set ou = dso.OpenDSObject(sRoot, oAccount.Address, sPassword, 77) for using email address instead of AD-Username
If Err.number <> 0 Then
Result.value = 1
Else
Result.value = 0
End If
rem Continue using standard auth from hMailServer
rem Result.value = 2
End Sub