Skip to content
Snippets Groups Projects
Verified Commit 6647d489 authored by Gabriel Zachmann's avatar Gabriel Zachmann
Browse files

add token_type to introspection response

parent abd63033
No related branches found
No related tags found
No related merge requests found
......@@ -12,6 +12,7 @@ import (
"github.com/oidc-mytoken/server/internal/model"
"github.com/oidc-mytoken/server/internal/utils/auth"
"github.com/oidc-mytoken/server/internal/utils/errorfmt"
model2 "github.com/oidc-mytoken/server/shared/model"
eventService "github.com/oidc-mytoken/server/shared/mytoken/event"
event "github.com/oidc-mytoken/server/shared/mytoken/event/pkg"
mytoken "github.com/oidc-mytoken/server/shared/mytoken/pkg"
......@@ -21,6 +22,7 @@ import (
func HandleTokenInfoIntrospect(
rlog log.Ext1FieldLogger,
mt *mytoken.Mytoken,
origionalTokenType model2.ResponseType,
clientMetadata *api.ClientMetaData,
) model.Response {
// If we call this function it means the token is valid.
......@@ -53,7 +55,8 @@ func HandleTokenInfoIntrospect(
TokeninfoIntrospectResponse: api.TokeninfoIntrospectResponse{
Valid: true,
},
Token: usedToken,
Token: usedToken,
TokenType: origionalTokenType,
},
}
}
......@@ -3,11 +3,13 @@ package pkg
import (
"github.com/oidc-mytoken/api/v0"
"github.com/oidc-mytoken/server/shared/model"
mytoken "github.com/oidc-mytoken/server/shared/mytoken/pkg"
)
// TokeninfoIntrospectResponse is type for responses to tokeninfo introspect requests
type TokeninfoIntrospectResponse struct {
api.TokeninfoIntrospectResponse `json:",inline"`
TokenType model.ResponseType `json:"token_type"`
Token mytoken.UsedMytoken `json:"token"`
}
......@@ -30,7 +30,7 @@ func HandleTokenInfo(ctx *fiber.Ctx) error {
clientMetadata := ctxUtils.ClientMetaData(ctx)
switch req.Action {
case model2.TokeninfoActionIntrospect:
return HandleTokenInfoIntrospect(rlog, mt, clientMetadata).Send(ctx)
return HandleTokenInfoIntrospect(rlog, mt, req.Mytoken.OriginalTokenType, clientMetadata).Send(ctx)
case model2.TokeninfoActionEventHistory:
return HandleTokenInfoHistory(rlog, req, mt, clientMetadata).Send(ctx)
case model2.TokeninfoActionSubtokenTree:
......
......@@ -8,6 +8,7 @@ import (
"github.com/oidc-mytoken/server/internal/endpoints/tokeninfo/pkg"
"github.com/oidc-mytoken/server/internal/utils/auth"
"github.com/oidc-mytoken/server/internal/utils/logger"
"github.com/oidc-mytoken/server/shared/model"
mytoken "github.com/oidc-mytoken/server/shared/mytoken/pkg"
)
......@@ -25,7 +26,7 @@ func handleIntrospect(s ssh.Session) error {
if errRes != nil {
return writeErrRes(s, errRes)
}
res := tokeninfo.HandleTokenInfoIntrospect(rlog, mt, &clientMetaData)
res := tokeninfo.HandleTokenInfoIntrospect(rlog, mt, model.ResponseTypeToken, &clientMetaData)
if res.Status >= 400 {
return writeErrRes(s, &res)
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment