Skip to content

Commit

Permalink
feat: support custom session token header
Browse files Browse the repository at this point in the history
The `/sessions/whoami` endpoint now accepts the ORY Kratos Session Token in the `X-Session-Token` HTTP header.
  • Loading branch information
aeneasr committed Oct 13, 2020
1 parent 3b3b78c commit 56bec76
Show file tree
Hide file tree
Showing 4 changed files with 8 additions and 2 deletions.
2 changes: 1 addition & 1 deletion .schema/api.swagger.json
Expand Up @@ -2631,7 +2631,7 @@
"securityDefinitions": {
"sessionToken": {
"type": "apiKey",
"name": "Authorization",
"name": "X-Session-Token",
"in": "header"
}
},
Expand Down
2 changes: 2 additions & 0 deletions docs/docs/guides/login-session.mdx
Expand Up @@ -145,6 +145,8 @@ Token as a bearer token in the HTTP Authorization Header:
$ sessionToken=oFZzgLpsacUpUy2cvQPtrGa2046WcXCR
$ curl -s -X POST -H "Accept: application/json" \
-H "Authorization: Bearer $sessionToken" \
# OR: \
# -H "X-Session-Token: $sessionToken" \
http://127.0.0.1:4433/sessions/whoami | jq

{
Expand Down
4 changes: 4 additions & 0 deletions session/manager_http.go
Expand Up @@ -100,6 +100,10 @@ func (s *ManagerHTTP) extractToken(r *http.Request) string {
return token
}

if token := r.Header.Get("X-Session-Token"); len(token) > 0 {
return token
}

cookie, err := s.r.CookieManager().Get(r, s.cookieName)
if err != nil {
return ""
Expand Down
2 changes: 1 addition & 1 deletion swagger_meta.go
Expand Up @@ -17,7 +17,7 @@
// SecurityDefinitions:
// sessionToken:
// type: apiKey
// name: Authorization
// name: X-Session-Token
// in: header
//
// Extensions:
Expand Down

0 comments on commit 56bec76

Please sign in to comment.