MCPcopy Create free account
hub / github.com/cloudfoundry/cli / getJtiFromToken

Method getJtiFromToken

api/uaa/auth.go:109–135  ·  view source on GitHub ↗
(token string)

Source from the content-addressed store, hash-verified

107}
108
109func (client Client) getJtiFromToken(token string) (string, error) {
110 segments := strings.Split(token, ".")
111
112 if len(segments) < 2 {
113 return "", errors.New("access token missing segments")
114 }
115
116 jsonPayload, err := base64.RawURLEncoding.DecodeString(segments[1])
117
118 if err != nil {
119 return "", errors.New("could not base64 decode token payload")
120 }
121
122 payload := make(map[string]interface{})
123 err = json.Unmarshal(jsonPayload, &payload)
124 if err != nil {
125 return "", err
126 }
127
128 jti, ok := payload["jti"].(string)
129
130 if !ok {
131 return "", errors.New("could not parse jti from payload")
132 }
133
134 return jti, nil
135}

Callers 1

RevokeMethod · 0.95

Calls

no outgoing calls

Tested by

no test coverage detected