From d79544f34a7c960c2a4b140dcd9d71a4a38298f0 Mon Sep 17 00:00:00 2001 From: Yang Luo Date: Sat, 7 Aug 2021 12:34:14 +0800 Subject: [PATCH] Use User in Claims. --- object/token_jwt.go | 26 ++------------------------ routers/auto_signin_filter.go | 2 +- 2 files changed, 3 insertions(+), 25 deletions(-) diff --git a/object/token_jwt.go b/object/token_jwt.go index bcf8c598..bd7df3fc 100644 --- a/object/token_jwt.go +++ b/object/token_jwt.go @@ -23,18 +23,7 @@ import ( var jwtSecret = []byte("CasdoorSecret") type Claims struct { - Organization string `json:"organization"` - Username string `json:"username"` - Type string `json:"type"` - Name string `json:"name"` - Avatar string `json:"avatar"` - Email string `json:"email"` - Phone string `json:"phone"` - Affiliation string `json:"affiliation"` - Tag string `json:"tag"` - Language string `json:"language"` - Score int `json:"score"` - IsAdmin bool `json:"isAdmin"` + User jwt.StandardClaims } @@ -43,18 +32,7 @@ func generateJwtToken(application *Application, user *User) (string, error) { expireTime := nowTime.Add(time.Duration(application.ExpireInHours) * time.Hour) claims := Claims{ - Organization: user.Owner, - Username: user.Name, - Type: user.Type, - Name: user.DisplayName, - Avatar: user.Avatar, - Email: user.Email, - Phone: user.Phone, - Affiliation: user.Affiliation, - Tag: user.Tag, - Language: user.Language, - Score: user.Score, - IsAdmin: user.IsAdmin, + User: *user, StandardClaims: jwt.StandardClaims{ Audience: application.ClientId, ExpiresAt: expireTime.Unix(), diff --git a/routers/auto_signin_filter.go b/routers/auto_signin_filter.go index dd9b2d32..1f353f29 100644 --- a/routers/auto_signin_filter.go +++ b/routers/auto_signin_filter.go @@ -73,7 +73,7 @@ func AutoSigninFilter(ctx *context.Context) { return } - userId := fmt.Sprintf("%s/%s", claims.Organization, claims.Username) + userId := fmt.Sprintf("%s/%s", claims.User.Owner, claims.User.Name) setSessionUser(ctx, userId) return }