From 415452dd89eb294333039666bf6a2d3dffbe3ec6 Mon Sep 17 00:00:00 2001 From: verybadsoldier Date: Sat, 25 Mar 2023 00:54:22 +0100 Subject: [PATCH] step --- backend/app/api/handlers/v1/v1_ctrl_auth.go | 23 ++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/backend/app/api/handlers/v1/v1_ctrl_auth.go b/backend/app/api/handlers/v1/v1_ctrl_auth.go index 8e38bdd..09b8cad 100644 --- a/backend/app/api/handlers/v1/v1_ctrl_auth.go +++ b/backend/app/api/handlers/v1/v1_ctrl_auth.go @@ -109,11 +109,32 @@ func (ctrl *V1Controller) HandleSsoHeaderLogin() errchain.HandlerFunc { return validate.NewRequestError(errors.New("authentication failed. not SSO header found or empty"), http.StatusInternalServerError) } + usr, err := ctrl.repo.Users.GetOneEmail(r.Context(), email) + + if err != nil { + + } + newToken, err := ctrl.svc.User.LoginWithoutPassword(r.Context(), strings.ToLower(email), false) if err != nil { + var username = r.Header.Get("Remote-Name") + + regData := services.UserRegistration { + GroupToken: "adf", + Name : username, + Email : email, + Password : "", + } + + _, err := ctrl.svc.User.RegisterUser(r.Context(), regData) + if err != nil { + log.Err(err).Msg("failed to register user from SSO HTTP headers") + return validate.NewRequestError(err, http.StatusInternalServerError) + } + return validate.NewRequestError(errors.New("authentication failed"), http.StatusInternalServerError) - } + return server.JSON(w, http.StatusOK, TokenResponse{ Token: "Bearer " + newToken.Raw,