From 9f74d2cb096a19bfb09716e40887c13fd24917eb Mon Sep 17 00:00:00 2001 From: Jens Langhammer Date: Mon, 22 Jul 2024 00:06:06 +0200 Subject: [PATCH] make extended login challenges not hardcoded Signed-off-by: Jens Langhammer --- authentik/flows/challenge.py | 8 ++++++-- authentik/sources/oauth/types/apple.py | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/authentik/flows/challenge.py b/authentik/flows/challenge.py index dfb3585ec4..5fc2ec2725 100644 --- a/authentik/flows/challenge.py +++ b/authentik/flows/challenge.py @@ -60,18 +60,22 @@ class Challenge(PassiveSerializer): ) +class LoginChallenge(Challenge): + """Base class for extended login challenges""" + + class RedirectChallenge(Challenge): """Challenge type to redirect the client""" - to = CharField() component = CharField(default="xak-flow-redirect") + to = CharField() class ShellChallenge(Challenge): """challenge type to render HTML as-is""" - body = CharField() component = CharField(default="xak-flow-shell") + body = CharField() class WithUserInfoChallenge(Challenge): diff --git a/authentik/sources/oauth/types/apple.py b/authentik/sources/oauth/types/apple.py index 2a468d0894..cf018b5b94 100644 --- a/authentik/sources/oauth/types/apple.py +++ b/authentik/sources/oauth/types/apple.py @@ -107,7 +107,7 @@ class AppleType(SourceType): authorization_code_auth_method = AuthorizationCodeAuthMethod.POST_BODY - def login_challenge(self, source: OAuthSource, request: HttpRequest) -> Challenge: + def login_challenge(self, source: OAuthSource, request: HttpRequest) -> AppleLoginChallenge: """Pre-general all the things required for the JS SDK""" apple_client = AppleOAuthClient( source,