@@ -65,7 +65,7 @@ func (a *API) ExternalProviderRedirect(w http.ResponseWriter, r *http.Request) e
6565 log := observability .GetLogEntry (r )
6666 log .WithField ("provider" , providerType ).Info ("Redirecting to external provider" )
6767
68- token := jwt .NewWithClaims (jwt . SigningMethodHS256 , ExternalProviderClaims {
68+ token := jwt .NewWithClaims (config . JWT . GetSigningMethod () , ExternalProviderClaims {
6969 NetlifyMicroserviceClaims : NetlifyMicroserviceClaims {
7070 StandardClaims : jwt.StandardClaims {
7171 ExpiresAt : time .Now ().Add (5 * time .Minute ).Unix (),
@@ -77,7 +77,7 @@ func (a *API) ExternalProviderRedirect(w http.ResponseWriter, r *http.Request) e
7777 InviteToken : inviteToken ,
7878 Referrer : redirectURL ,
7979 })
80- tokenString , err := token .SignedString ([] byte ( config .JWT .Secret ))
80+ tokenString , err := token .SignedString (config .JWT .GetSigningKey ( ))
8181 if err != nil {
8282 return internalServerError ("Error creating state" ).WithInternalError (err )
8383 }
@@ -424,9 +424,9 @@ func (a *API) processInvite(r *http.Request, ctx context.Context, tx *storage.Co
424424func (a * API ) loadExternalState (ctx context.Context , state string ) (context.Context , error ) {
425425 config := a .config
426426 claims := ExternalProviderClaims {}
427- p := jwt.Parser {ValidMethods : []string {jwt . SigningMethodHS256 . Name }}
427+ p := jwt.Parser {ValidMethods : []string {config . JWT . Algorithm }}
428428 _ , err := p .ParseWithClaims (state , & claims , func (token * jwt.Token ) (interface {}, error ) {
429- return [] byte ( config .JWT .Secret ), nil
429+ return config .JWT .GetVerificationKey ( ), nil
430430 })
431431 if err != nil || claims .Provider == "" {
432432 return nil , badRequestError ("OAuth state is invalid: %v" , err )
0 commit comments