From 2a6889c4f7ca1fa74a184661c252a4190107190c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lu=C3=ADs=20Portela=20Afonso?= Date: Wed, 22 Feb 2023 11:40:57 +0000 Subject: [PATCH] feat(token): forward access_token internally (#53) --- internal/configurations/rest_controller_configuration.go | 1 + internal/controllers/rest_controller.go | 2 ++ 2 files changed, 3 insertions(+) diff --git a/internal/configurations/rest_controller_configuration.go b/internal/configurations/rest_controller_configuration.go index 40f964c..7878fe8 100644 --- a/internal/configurations/rest_controller_configuration.go +++ b/internal/configurations/rest_controller_configuration.go @@ -13,6 +13,7 @@ type RESTControllerConfiguration struct { LogoutURL string `envconfig:"LOGOUT_URL" default:"/logout"` UserInfoURL string `envconfig:"USER_INFO_URL" default:"/userinfo"` HTTPRequestTimeout time.Duration `envconfig:"HTTP_REQUEST_TIMEOUT" default:"30s"` + AccessTokenCookie string `envconfig:"ACCESS_TOKEN_COOKIE" default:"access_token"` UserIDHeader string `envconfig:"USER_ID_HEADER" default:"userid"` CookieMaxAge int `envconfig:"COOKIE_MAX_AGE" default:"86400"` SkipURLs []string `envconfig:"SKIP_URLS" default:"/dex" split_words:"true"` diff --git a/internal/controllers/rest_controller.go b/internal/controllers/rest_controller.go index 7509f82..12a463f 100644 --- a/internal/controllers/rest_controller.go +++ b/internal/controllers/rest_controller.go @@ -85,6 +85,8 @@ func (rc RESTController) CheckForAuthentication(w http.ResponseWriter, r *http.R rc.logger.Debugf("Valid Token: %s", token) rc.logger.Infof("Authorizing request for UserID: %v", userInfo.Email) + http.SetCookie(w, &http.Cookie{Name: rc.configuration.AccessTokenCookie, Value: token}) + // set UserID Header + 200 OK w.Header().Set(rc.configuration.UserIDHeader, userInfo.Email) w.WriteHeader(http.StatusOK)