mirror of
https://github.com/goharbor/harbor.git
synced 2025-02-18 21:01:27 +01:00
Merge pull request #7590 from reasonerjt/oidc-wrong-secret-err
Return more details for error in exchange token
This commit is contained in:
commit
c53d73775a
@ -222,6 +222,9 @@ func (b *BaseAPI) SendBadRequestError(err error) {
|
||||
}
|
||||
|
||||
// SendInternalServerError sends internal server error to the client.
|
||||
// Note the detail info of err will not include in the response body.
|
||||
// When you send an internal server error to the client, you expect user to check the log
|
||||
// to find out the root cause.
|
||||
func (b *BaseAPI) SendInternalServerError(err error) {
|
||||
log.Error(err.Error())
|
||||
b.RenderFormattedError(http.StatusInternalServerError, http.StatusText(http.StatusInternalServerError))
|
||||
@ -232,12 +235,12 @@ func (b *BaseAPI) SendForbiddenError(err error) {
|
||||
b.RenderFormattedError(http.StatusForbidden, err.Error())
|
||||
}
|
||||
|
||||
// SendPreconditionFailedError sends forbidden error to the client.
|
||||
// SendPreconditionFailedError sends conflict error to the client.
|
||||
func (b *BaseAPI) SendPreconditionFailedError(err error) {
|
||||
b.RenderFormattedError(http.StatusPreconditionFailed, err.Error())
|
||||
}
|
||||
|
||||
// SendStatusServiceUnavailableError sends forbidden error to the client.
|
||||
// SendStatusServiceUnavailableError sends service unavailable error to the client.
|
||||
func (b *BaseAPI) SendStatusServiceUnavailableError(err error) {
|
||||
b.RenderFormattedError(http.StatusServiceUnavailable, err.Error())
|
||||
}
|
||||
|
@ -86,7 +86,9 @@ func (oc *OIDCController) Callback() {
|
||||
ctx := oc.Ctx.Request.Context()
|
||||
token, err := oidc.ExchangeToken(ctx, code)
|
||||
if err != nil {
|
||||
oc.SendInternalServerError(err)
|
||||
log.Errorf("Failed to exchange token, error: %v", err)
|
||||
// Return a 4xx error so user can see the details in case it's due to misconfiguration.
|
||||
oc.SendBadRequestError(err)
|
||||
return
|
||||
}
|
||||
idToken, err := oidc.VerifyToken(ctx, token.IDToken)
|
||||
|
Loading…
Reference in New Issue
Block a user