Spaces:
Runtime error
Runtime error
File size: 1,020 Bytes
a30f2aa |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
@startuml dependencies
actor Client
participant "OAuth2PasswordBearer" as oauth2
participant "Dependencies" as dependencies
participant "JWTError" as jwtError
participant "HTTPException" as httpException
database "TinyDBHelper" as db
Client -> dependencies : get_current_user(token)
activate dependencies
dependencies -> oauth2 : token
oauth2 --> dependencies : token
dependencies -> dependencies : decode_jwt(token)
activate dependencies
alt success
dependencies --> dependencies : payload
else JWTError
dependencies -> jwtError : raise credentials_exception
jwtError --> dependencies : HTTP_401_UNAUTHORIZED
end
deactivate dependencies
dependencies -> db : query_token(user_id, token)
activate db
alt token valid
db --> dependencies : true
else token invalid
db --> dependencies : false
dependencies -> httpException : raise expiry_exception
httpException --> dependencies : HTTP_401_UNAUTHORIZED
end
deactivate db
dependencies --> Client : user_details
deactivate dependencies
@enduml
|