Skip to content

Commit 1b18b5c

Browse files
committed
Make unexpected errors in JWT proxy more descriptive
This allows downstream users to better debug when their key server isn't working
1 parent 810ce03 commit 1b18b5c

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

jwt/keyserver/keyregistry/keyregistry.go

+8-1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import (
1919
"encoding/json"
2020
"fmt"
2121
"io"
22+
"io/ioutil"
2223
"net/http"
2324
"net/url"
2425
"path"
@@ -79,7 +80,13 @@ func (krc *client) GetPublicKey(issuer string, keyID string) (*key.PublicKey, er
7980
case http.StatusForbidden:
8081
return nil, keyserver.ErrPublicKeyExpired
8182
default:
82-
return nil, keyserver.ErrUnkownResponse
83+
bodyBytes, bodyErr := ioutil.ReadAll(resp.Body)
84+
if bodyErr != nil {
85+
bodyBytes = []byte{}
86+
}
87+
88+
rerr := fmt.Errorf("Got unexpected response from key server: %v: %s", resp.StatusCode, string(bodyBytes))
89+
return nil, rerr
8390
}
8491
}
8592

jwt/keyserver/keyserver.go

-1
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@ import (
2828
var (
2929
ErrPublicKeyNotFound = errors.New("Could not find any matching public key")
3030
ErrPublicKeyExpired = errors.New("Key has expired.")
31-
ErrUnkownResponse = errors.New("Unexpected response.")
3231
)
3332

3433
type ReaderConstructor func(config.RegistrableComponentConfig) (Reader, error)

jwt/privatekey/autogenerated/autogenerated.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,8 @@ func constructor(registrableComponentConfig config.RegistrableComponentConfig, s
9393
log.Debug("Public Key not found - generating a new key")
9494
case keyserver.ErrPublicKeyExpired:
9595
log.WithError(err).Fatal("Public key has expired; delete or renew it.")
96-
case keyserver.ErrUnkownResponse:
97-
log.WithError(err).Fatal("Uknown response from the keyserver.")
96+
default:
97+
log.WithError(err).Fatal(err.Error())
9898
}
9999
}
100100
} else {

0 commit comments

Comments
 (0)