Skip to content

Commit 0929ff8

Browse files
committed
logout refactor: split application retrieval
1 parent 8217444 commit 0929ff8

File tree

1 file changed

+7
-8
lines changed

1 file changed

+7
-8
lines changed

oauth2_provider/views/oidc.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -406,6 +406,12 @@ def validate_logout_request_user(self, id_token_hint, client_id):
406406

407407
return id_token
408408

409+
def get_request_application(self, id_token, client_id):
410+
if client_id:
411+
return get_application_model().objects.get(client_id=client_id)
412+
if id_token:
413+
return id_token.application
414+
409415
def validate_logout_request(self, id_token_hint, client_id, post_logout_redirect_uri):
410416
"""
411417
Validate an OIDC RP-Initiated Logout Request.
@@ -419,14 +425,7 @@ def validate_logout_request(self, id_token_hint, client_id, post_logout_redirect
419425
"""
420426

421427
id_token = self.validate_logout_request_user(id_token_hint, client_id)
422-
423-
application = None
424-
# Determine the application that is requesting the logout.
425-
if client_id:
426-
application = get_application_model().objects.get(client_id=client_id)
427-
elif id_token:
428-
application = id_token.application
429-
428+
application = self.get_request_application(id_token, client_id)
430429
self.validate_post_logout_redirect_uri(application, post_logout_redirect_uri)
431430

432431
return application, id_token.user if id_token else None

0 commit comments

Comments
 (0)