mirror of
https://github.com/jupyterhub/jupyterhub.git
synced 2025-10-13 13:03:01 +00:00
add session_id to token model
This commit is contained in:
@@ -1336,6 +1336,14 @@ components:
|
||||
Timestamp of last-seen activity using this token.
|
||||
Can be null if token has never been used.
|
||||
format: date-time
|
||||
session_id:
|
||||
type: string
|
||||
nullable: true
|
||||
description: |
|
||||
The session id associated with the token, if any.
|
||||
Only used for tokens set during oauth flows.
|
||||
|
||||
Added in 2.0.
|
||||
responses:
|
||||
NotFound:
|
||||
description: The specified resource was not found
|
||||
|
@@ -210,6 +210,7 @@ class APIHandler(BaseHandler):
|
||||
'last_activity': isoformat(token.last_activity),
|
||||
'expires_at': isoformat(token.expires_at),
|
||||
'note': token.note,
|
||||
'session_id': token.session_id,
|
||||
'oauth_client': token.oauth_client.description
|
||||
or token.oauth_client.identifier,
|
||||
}
|
||||
|
@@ -58,6 +58,14 @@ class SelfAPIHandler(APIHandler):
|
||||
|
||||
model = get_model(user)
|
||||
|
||||
# add session_id associated with token
|
||||
# added in 2.0
|
||||
token = self.get_token()
|
||||
if token:
|
||||
model["session_id"] = token.session_id
|
||||
else:
|
||||
model["session_id"] = None
|
||||
|
||||
# add scopes to identify model,
|
||||
# but not the scopes we added to ensure we could read our own model
|
||||
model["scopes"] = sorted(self.expanded_scopes.difference(_added_scopes))
|
||||
|
@@ -340,6 +340,7 @@ class BaseHandler(RequestHandler):
|
||||
auth_info['auth_state'] = await user.get_auth_state()
|
||||
return await self.auth_to_user(auth_info, user)
|
||||
|
||||
@functools.lru_cache()
|
||||
def get_token(self):
|
||||
"""get token from authorization header"""
|
||||
token = self.get_auth_token()
|
||||
|
Reference in New Issue
Block a user