Fix logout session teardown
This commit is contained in:
1 parent
f181482463
commit
816da519dd
2 files changed
+13
-6
No files matched your search
+11
-5
@@ -202,8 +202,14 @@ def set_session_cookie(response: Response, request: Request, token: str) -> None
|
||||
)
|
||||
|
||||
|
||||
def clear_session_cookie(response: Response) -> None:
|
||||
response.delete_cookie(SESSION_COOKIE, path="/", httponly=True, samesite="lax")
|
||||
def clear_session_cookie(response: Response, request: Request) -> None:
|
||||
response.delete_cookie(
|
||||
SESSION_COOKIE,
|
||||
path="/",
|
||||
secure=request_uses_https(request),
|
||||
httponly=True,
|
||||
samesite="lax",
|
||||
)
|
||||
|
||||
|
||||
def audit_event(
|
||||
@@ -378,8 +384,8 @@ def login(payload: LoginRequest, request: Request, response: Response):
|
||||
|
||||
|
||||
@router.post("/api/auth/logout")
|
||||
def logout(response: Response):
|
||||
clear_session_cookie(response)
|
||||
def logout(request: Request, response: Response):
|
||||
clear_session_cookie(response, request)
|
||||
return api_response(data={"logged_out": True})
|
||||
|
||||
|
||||
@@ -726,7 +732,7 @@ def install_identity_middleware(app) -> None:
|
||||
if not user:
|
||||
destination = "/login?next=" + quote(path, safe="/")
|
||||
response = RedirectResponse(destination, status_code=303)
|
||||
clear_session_cookie(response)
|
||||
clear_session_cookie(response, request)
|
||||
return response
|
||||
permission = required_page_permission(path)
|
||||
if not user_has_permission(user, permission):
|
||||
|
||||
Reference in new issue
Block a user