Commit 02af9669 by Oleg Gaidarenko Committed by GitHub

LDAP: multildap + ldap integration (#18588)

It seems `ldap` module introduced new error type of which
multildap module didn't know about.

This broke the multildap login logic

Fixes #18491
Ref #18587
parent 302a1f06
...@@ -19,6 +19,9 @@ var newLDAP = ldap.New ...@@ -19,6 +19,9 @@ var newLDAP = ldap.New
// ErrInvalidCredentials is returned if username and password do not match // ErrInvalidCredentials is returned if username and password do not match
var ErrInvalidCredentials = ldap.ErrInvalidCredentials var ErrInvalidCredentials = ldap.ErrInvalidCredentials
// ErrCouldNotFindUser is returned when username hasn't been found (not username+password)
var ErrCouldNotFindUser = ldap.ErrCouldNotFindUser
// ErrNoLDAPServers is returned when there is no LDAP servers specified // ErrNoLDAPServers is returned when there is no LDAP servers specified
var ErrNoLDAPServers = errors.New("No LDAP servers are configured") var ErrNoLDAPServers = errors.New("No LDAP servers are configured")
...@@ -76,7 +79,7 @@ func (multiples *MultiLDAP) Login(query *models.LoginUserQuery) ( ...@@ -76,7 +79,7 @@ func (multiples *MultiLDAP) Login(query *models.LoginUserQuery) (
} }
// Continue if we couldn't find the user // Continue if we couldn't find the user
if err == ErrInvalidCredentials { if err == ErrCouldNotFindUser {
continue continue
} }
......
...@@ -82,10 +82,10 @@ func TestMultiLDAP(t *testing.T) { ...@@ -82,10 +82,10 @@ func TestMultiLDAP(t *testing.T) {
teardown() teardown()
}) })
Convey("Should still call a second error for invalid cred error", func() { Convey("Should still call a second error for invalid not found error", func() {
mock := setup() mock := setup()
mock.loginErrReturn = ErrInvalidCredentials mock.loginErrReturn = ErrCouldNotFindUser
multi := New([]*ldap.ServerConfig{ multi := New([]*ldap.ServerConfig{
{}, {}, {}, {},
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment