diff --git a/backend/Gopkg.lock b/backend/Gopkg.lock index f9a9ced4..87006287 100644 --- a/backend/Gopkg.lock +++ b/backend/Gopkg.lock @@ -112,7 +112,7 @@ version = "v1.0.0" [[projects]] - digest = "1:38940db39a8ee330d3e7f68ab4c298575462f5986ae2bb0cafa86f095e9d32ad" + digest = "1:5531b51e68782803aa0bb987611e6c5eff939b5dc32fe671864f52e44766bf08" name = "github.com/go-pkgz/auth" packages = [ ".", @@ -123,8 +123,8 @@ "token", ] pruneopts = "UT" - revision = "7597c083287c33ba5362687a7815a032fd92c418" - version = "v0.4.1" + revision = "09b02500e01e25ac05182a6dc1b80ce1b0a7fd53" + version = "v0.4.2" [[projects]] digest = "1:c4cb8b521f8e55dd02e1ed0952953adb35dbcc8eca8aeac9d707abc7ed625843" diff --git a/backend/vendor/github.com/go-pkgz/auth/.travis.yml b/backend/vendor/github.com/go-pkgz/auth/.travis.yml index f8747c76..9fa53154 100644 --- a/backend/vendor/github.com/go-pkgz/auth/.travis.yml +++ b/backend/vendor/github.com/go-pkgz/auth/.travis.yml @@ -10,7 +10,7 @@ install: true before_install: - export TZ=America/Chicago - - curl -L https://git.io/vp6lP | sh + - curl -sfL https://install.goreleaser.com/github.com/golangci/golangci-lint.sh | sh -s -- -b $(go env GOPATH)/bin v1.13.2 - go get github.com/mattn/goveralls - export MONGO_TEST=mongodb://127.0.0.1:27017 - export PATH=$(pwd)/bin:$PATH @@ -19,5 +19,5 @@ script: - GO111MODULE=on go get ./... - GO111MODULE=on go mod vendor - GO111MODULE=on go test -v -mod=vendor -covermode=count -coverprofile=profile.cov ./... || travis_terminate 1; - - ./bin/gometalinter --deadline=120s --exclude=test --exclude=mock --exclude=vendor --exclude=_example --disable-all --enable=errcheck --enable=vet --enable=vetshadow --enable=megacheck --enable=ineffassign --enable=varcheck --enable=unconvert --enable=deadcode --enable=interfacer --enable=gotype ./... || travis_terminate 1; + - golangci-lint run --tests=false || travis_terminate 1; - $GOPATH/bin/goveralls -coverprofile=profile.cov -service=travis-ci diff --git a/backend/vendor/github.com/go-pkgz/auth/auth.go b/backend/vendor/github.com/go-pkgz/auth/auth.go index 45755382..13dc9dc2 100644 --- a/backend/vendor/github.com/go-pkgz/auth/auth.go +++ b/backend/vendor/github.com/go-pkgz/auth/auth.go @@ -146,6 +146,11 @@ func (s *Service) Handlers() (authHandler http.Handler, avatarHandler http.Handl // allow logout without specifying provider if elems[len(elems)-1] == "logout" { + if len(s.providers) == 0 { + w.WriteHeader(http.StatusBadRequest) + rest.RenderJSON(w, r, rest.JSON{"error": "provides not defined"}) + return + } s.providers[0].Handler(w, r) return } diff --git a/backend/vendor/github.com/go-pkgz/auth/provider/direct.go b/backend/vendor/github.com/go-pkgz/auth/provider/direct.go index a6e1ff88..d332a0e0 100644 --- a/backend/vendor/github.com/go-pkgz/auth/provider/direct.go +++ b/backend/vendor/github.com/go-pkgz/auth/provider/direct.go @@ -1,6 +1,7 @@ package provider import ( + "crypto/sha1" "errors" "net/http" @@ -57,7 +58,10 @@ func (p DirectHandler) LoginHandler(w http.ResponseWriter, r *http.Request) { return } claims := token.Claims{ - User: &token.User{Name: user}, + User: &token.User{ + Name: user, + ID: p.ProviderName + "_" + token.HashID(sha1.New(), user), + }, StandardClaims: jwt.StandardClaims{ Issuer: p.Issuer, Audience: aud,