Skip to content

Commit bf5e3cf

Browse files
committed
fix: jwt token signed verification
1 parent 2868947 commit bf5e3cf

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

services/collaboration/pkg/middleware/wopicontext.go

+8-2
Original file line numberDiff line numberDiff line change
@@ -198,8 +198,14 @@ func GenerateWopiToken(wopiContext WopiContext, cfg *config.Config, st microstor
198198
}
199199

200200
cs3Claims := &jwt.RegisteredClaims{}
201-
cs3JWTparser := jwt.Parser{}
202-
_, _, err = cs3JWTparser.ParseUnverified(wopiContext.AccessToken, cs3Claims)
201+
_, err = jwt.ParseWithClaims(wopiContext.AccessToken, cs3Claims, func(token *jwt.Token) (interface{}, error) {
202+
203+
if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
204+
return nil, fmt.Errorf("unexpected signing method: %v", token.Header["alg"])
205+
}
206+
207+
return []byte(cfg.Wopi.Secret), nil
208+
})
203209
if err != nil {
204210
return "", 0, err
205211
}

0 commit comments

Comments
 (0)