From 08a69ff6f3ced539fa378c1a93a90e1da524bc95 Mon Sep 17 00:00:00 2001 From: John Rowley Date: Wed, 18 Oct 2023 00:54:25 -0700 Subject: [PATCH] chore: upgraded to golang-jwt v5 (#446) --- client.go | 2 +- client_test.go | 4 ++-- go.mod | 6 +++--- go.sum | 12 ++++++------ models.go | 4 ++-- pkg/jwx/jwx.go | 2 +- pkg/jwx/jwx_test.go | 2 +- pkg/jwx/models.go | 4 ++-- 8 files changed, 18 insertions(+), 18 deletions(-) diff --git a/client.go b/client.go index 5c8bc50d..96790969 100644 --- a/client.go +++ b/client.go @@ -13,7 +13,7 @@ import ( "time" "github.com/go-resty/resty/v2" - "github.com/golang-jwt/jwt/v4" + "github.com/golang-jwt/jwt/v5" "github.com/opentracing/opentracing-go" "github.com/pkg/errors" "github.com/segmentio/ksuid" diff --git a/client_test.go b/client_test.go index 9ceebeab..0cda97c3 100644 --- a/client_test.go +++ b/client_test.go @@ -22,7 +22,7 @@ import ( "time" "github.com/go-resty/resty/v2" - "github.com/golang-jwt/jwt/v4" + "github.com/golang-jwt/jwt/v5" "github.com/stretchr/testify/require" "golang.org/x/crypto/pkcs12" @@ -6258,7 +6258,7 @@ func Test_CreatePermissionTicket(t *testing.T) { }) // we're expecting validity error because we didn't supply secret - require.Equal(t, "signature is invalid", err.Error()) + require.ErrorIs(t, err, jwt.ErrTokenSignatureInvalid) claims, ok := pt.Claims.(*gocloak.PermissionTicketRepresentation) // ticketClaims) require.Equal(t, true, ok) diff --git a/go.mod b/go.mod index 90f78f02..2c989b71 100644 --- a/go.mod +++ b/go.mod @@ -4,17 +4,17 @@ go 1.18 require ( github.com/go-resty/resty/v2 v2.7.0 - github.com/golang-jwt/jwt/v4 v4.5.0 + github.com/golang-jwt/jwt/v5 v5.0.0 github.com/opentracing/opentracing-go v1.2.0 github.com/pkg/errors v0.9.1 github.com/segmentio/ksuid v1.0.4 github.com/stretchr/testify v1.8.2 - golang.org/x/crypto v0.6.0 + golang.org/x/crypto v0.14.0 ) require ( github.com/davecgh/go-spew v1.1.1 // indirect github.com/pmezard/go-difflib v1.0.0 // indirect - golang.org/x/net v0.7.0 // indirect + golang.org/x/net v0.17.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index a8aaf844..5f81ea7f 100644 --- a/go.sum +++ b/go.sum @@ -3,8 +3,8 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/go-resty/resty/v2 v2.7.0 h1:me+K9p3uhSmXtrBZ4k9jcEAfJmuC8IivWHwaLZwPrFY= github.com/go-resty/resty/v2 v2.7.0/go.mod h1:9PWDzw47qPphMRFfhsyk0NnSgvluHcljSMVIq3w7q0I= -github.com/golang-jwt/jwt/v4 v4.5.0 h1:7cYmW1XlMY7h7ii7UhUyChSgS5wUJEnm9uZVTGqOWzg= -github.com/golang-jwt/jwt/v4 v4.5.0/go.mod h1:m21LjoU+eqJr34lmDMbreY2eSTRJ1cv77w39/MY0Ch0= +github.com/golang-jwt/jwt/v5 v5.0.0 h1:1n1XNM9hk7O9mnQoNBGolZvzebBQ7p93ULHRc28XJUE= +github.com/golang-jwt/jwt/v5 v5.0.0/go.mod h1:pqrtFR0X4osieyHYxtmOUWsAWrfe1Q5UVIyoH402zdk= github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs= github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc= github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= @@ -21,11 +21,11 @@ github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/ github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU= github.com/stretchr/testify v1.8.2 h1:+h33VjcLVPDHtOdpUCuF+7gSuG3yGIftsP1YvFihtJ8= github.com/stretchr/testify v1.8.2/go.mod h1:w2LPCIKwWwSfY2zedu0+kehJoqGctiVI29o6fzry7u4= -golang.org/x/crypto v0.6.0 h1:qfktjS5LUO+fFKeJXZ+ikTRijMmljikvG68fpMMruSc= -golang.org/x/crypto v0.6.0/go.mod h1:OFC/31mSvZgRz0V1QTNCzfAI1aIRzbiufJtkMIlEp58= +golang.org/x/crypto v0.14.0 h1:wBqGXzWJW6m1XrIKlAH0Hs1JJ7+9KBwnIO8v66Q9cHc= +golang.org/x/crypto v0.14.0/go.mod h1:MVFd36DqK4CsrnJYDkBA3VC4m2GkXAM0PvzMCn4JQf4= golang.org/x/net v0.0.0-20211029224645-99673261e6eb/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.7.0 h1:rJrUqqhjsgNp7KqAIc25s9pZnjU7TUcSY7HcVZjdn1g= -golang.org/x/net v0.7.0/go.mod h1:2Tu9+aMcznHK/AK1HMvgo6xiTLG5rD5rZLDS+rp2Bjs= +golang.org/x/net v0.17.0 h1:pVaXccu2ozPjCXewfr1S7xza/zcXTity9cCdXQYSjIM= +golang.org/x/net v0.17.0/go.mod h1:NxSsAGuq816PNPmqtQdLE42eU2Fs7NoRIZrHJAlaCOE= golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/sys v0.0.0-20210423082822-04245dca01da/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= diff --git a/models.go b/models.go index ee051217..fc26d208 100644 --- a/models.go +++ b/models.go @@ -5,7 +5,7 @@ import ( "encoding/json" "strings" - "github.com/golang-jwt/jwt/v4" + "github.com/golang-jwt/jwt/v5" ) // GetQueryParams converts the struct to map[string]string @@ -1258,7 +1258,7 @@ type PermissionTicketRepresentation struct { AZP *string `json:"azp,omitempty"` Claims *map[string][]string `json:"claims,omitempty"` Permissions *[]PermissionTicketPermissionRepresentation `json:"permissions,omitempty"` - jwt.StandardClaims + jwt.RegisteredClaims } // PermissionTicketPermissionRepresentation represents the individual permissions in a permission ticket diff --git a/pkg/jwx/jwx.go b/pkg/jwx/jwx.go index ccf000f5..8eeefada 100644 --- a/pkg/jwx/jwx.go +++ b/pkg/jwx/jwx.go @@ -12,7 +12,7 @@ import ( "math/big" "strings" - "github.com/golang-jwt/jwt/v4" + "github.com/golang-jwt/jwt/v5" "github.com/pkg/errors" ) diff --git a/pkg/jwx/jwx_test.go b/pkg/jwx/jwx_test.go index 97a6ba98..4862d746 100644 --- a/pkg/jwx/jwx_test.go +++ b/pkg/jwx/jwx_test.go @@ -10,7 +10,7 @@ import ( "github.com/stretchr/testify/require" - "github.com/golang-jwt/jwt/v4" + "github.com/golang-jwt/jwt/v5" ) var claims = jwt.MapClaims{ diff --git a/pkg/jwx/models.go b/pkg/jwx/models.go index 48b7449a..c5ccfb7d 100644 --- a/pkg/jwx/models.go +++ b/pkg/jwx/models.go @@ -1,6 +1,6 @@ package jwx -import jwt "github.com/golang-jwt/jwt/v4" +import jwt "github.com/golang-jwt/jwt/v5" // DecodedAccessTokenHeader is the decoded header from the access token type DecodedAccessTokenHeader struct { @@ -11,7 +11,7 @@ type DecodedAccessTokenHeader struct { // Claims served by keycloak inside the accessToken type Claims struct { - jwt.StandardClaims + jwt.RegisteredClaims Typ string `json:"typ,omitempty"` Azp string `json:"azp,omitempty"` AuthTime int `json:"auth_time,omitempty"`