Files
konova/konova/views/logout.py
T
mpeltriaux da5def5d6f # OAuth Token removal
* adds deletion of oauth token stored on konova db on user logout
2026-10-06 11:55:37 +02:00

38 lines
948 B
Python

"""
Author: Michel Peltriaux
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
Contact: ksp-servicestelle@sgdnord.rlp.de
Created on: 19.08.22
"""
from django.contrib.auth import logout
from django.http import HttpRequest
from django.shortcuts import redirect
from django.views import View
from konova.sub_settings.sso_settings import SSO_SERVER_BASE
class LogoutView(View):
def get(self, request: HttpRequest):
"""
Logout route for ending the session manually.
Args:
request (HttpRequest): The used request object
Returns:
A redirect
"""
user = request.user
try:
oauth_token = user.oauth_token
if oauth_token:
oauth_token.revoke()
oauth_token.delete()
except AttributeError:
pass
logout(request)
return redirect(SSO_SERVER_BASE)