Merge pull request #992 from theangryangel/fix/ldap-auth
Attempt 3 to fix LDAP login issues when git pushing after password change
This commit is contained in:
commit
3a6ba39a61
2 changed files with 6 additions and 13 deletions
|
@ -108,19 +108,18 @@ func SignedInUser(req *http.Request, sess session.Store) (*models.User, bool) {
|
||||||
auths := strings.Fields(baHead)
|
auths := strings.Fields(baHead)
|
||||||
if len(auths) == 2 && auths[0] == "Basic" {
|
if len(auths) == 2 && auths[0] == "Basic" {
|
||||||
uname, passwd, _ := base.BasicAuthDecode(auths[1])
|
uname, passwd, _ := base.BasicAuthDecode(auths[1])
|
||||||
u, err := models.GetUserByName(uname)
|
|
||||||
|
u, err := models.UserSignIn(uname, passwd)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if err != models.ErrUserNotExist {
|
if err != models.ErrUserNotExist {
|
||||||
log.Error(4, "GetUserByName: %v", err)
|
log.Error(4, "UserSignIn: %v", err)
|
||||||
}
|
}
|
||||||
return nil, false
|
return nil, false
|
||||||
}
|
}
|
||||||
|
|
||||||
if u.ValidtePassword(passwd) {
|
|
||||||
return u, true
|
return u, true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
return nil, false
|
return nil, false
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -105,10 +105,10 @@ func Http(ctx *middleware.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
authUser, err = models.GetUserByName(authUsername)
|
authUser, err := models.UserSignIn(authUsername, authPasswd)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
if err != models.ErrUserNotExist {
|
if err != models.ErrUserNotExist {
|
||||||
ctx.Handle(500, "GetUserByName", err)
|
ctx.Handle(500, "UserSignIn error: %v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -128,12 +128,6 @@ func Http(ctx *middleware.Context) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
authUsername = authUser.Name
|
authUsername = authUser.Name
|
||||||
} else {
|
|
||||||
// Check user's password when username is correctly presented.
|
|
||||||
if !authUser.ValidtePassword(authPasswd) {
|
|
||||||
ctx.Handle(401, "invalid password", nil)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if !isPublicPull {
|
if !isPublicPull {
|
||||||
|
|
Reference in a new issue