Streamline auth error handling

This commit is contained in:
Jan Eitzinger 2023-06-15 12:00:45 +02:00
parent ce199bf320
commit f0685919fd
2 changed files with 6 additions and 3 deletions

View File

@ -6,6 +6,7 @@ package auth
import ( import (
"errors" "errors"
"fmt"
"net/http" "net/http"
"os" "os"
"strings" "strings"
@ -85,8 +86,8 @@ func (la *LdapAuthenticator) Login(
userDn := strings.Replace(la.config.UserBind, "{username}", user.Username, -1) userDn := strings.Replace(la.config.UserBind, "{username}", user.Username, -1)
if err := l.Bind(userDn, r.FormValue("password")); err != nil { if err := l.Bind(userDn, r.FormValue("password")); err != nil {
log.Error("Error while binding to ldap connection") log.Errorf("AUTH/LOCAL > Authentication for user %s failed: %v", user.Username, err)
return nil, err return nil, fmt.Errorf("AUTH/LDAP > Authentication failed")
} }
return user, nil return user, nil

View File

@ -8,6 +8,7 @@ import (
"fmt" "fmt"
"net/http" "net/http"
"github.com/ClusterCockpit/cc-backend/pkg/log"
"golang.org/x/crypto/bcrypt" "golang.org/x/crypto/bcrypt"
) )
@ -39,7 +40,8 @@ func (la *LocalAuthenticator) Login(
r *http.Request) (*User, error) { r *http.Request) (*User, error) {
if e := bcrypt.CompareHashAndPassword([]byte(user.Password), []byte(r.FormValue("password"))); e != nil { if e := bcrypt.CompareHashAndPassword([]byte(user.Password), []byte(r.FormValue("password"))); e != nil {
return nil, fmt.Errorf("AUTH/LOCAL > user '%s' provided the wrong password (%w)", user.Username, e) log.Errorf("AUTH/LOCAL > Authentication for user %s failed!", user.Username)
return nil, fmt.Errorf("AUTH/LOCAL > Authentication failed")
} }
return user, nil return user, nil