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 }