summaryrefslogtreecommitdiff
path: root/pkg/web/middleware/user.go
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-04-22 17:24:04 -0600
committermo khan <mo@mokhan.ca>2025-04-22 17:24:04 -0600
commitf3abcc365b46e2776a6f0da330a10493eb58a07b (patch)
treeb77b92b7c2ac71ff87ba0d65b707447731f7d575 /pkg/web/middleware/user.go
parenta4c1a145950739ac307eb7607ccedd7b10584d90 (diff)
refactor: convert id token to user in mapper
Diffstat (limited to 'pkg/web/middleware/user.go')
-rw-r--r--pkg/web/middleware/user.go4
1 files changed, 3 insertions, 1 deletions
diff --git a/pkg/web/middleware/user.go b/pkg/web/middleware/user.go
index ab4e3cc..1e95ce0 100644
--- a/pkg/web/middleware/user.go
+++ b/pkg/web/middleware/user.go
@@ -4,10 +4,12 @@ import (
"net/http"
"github.com/xlgmokha/x/pkg/log"
+ "github.com/xlgmokha/x/pkg/mapper"
"github.com/xlgmokha/x/pkg/x"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/db"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/domain"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/key"
+ "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/oidc"
)
func User(db db.Repository[*domain.User]) func(http.Handler) http.Handler {
@@ -21,7 +23,7 @@ func User(db db.Repository[*domain.User]) func(http.Handler) http.Handler {
user := db.Find(idToken.Subject)
if x.IsZero(user) {
- user = &domain.User{ID: idToken.Subject}
+ user = mapper.MapFrom[*oidc.IDToken, *domain.User](idToken)
if err := db.Save(user); err != nil {
log.WithFields(r.Context(), log.Fields{"error": err})
next.ServeHTTP(w, r)