From 89461893a4bfec391d38b29f1436786507088d38 Mon Sep 17 00:00:00 2001 From: Azalea <22280294+hykilpikonna@users.noreply.github.com> Date: Sat, 23 Mar 2024 12:22:32 -0400 Subject: [PATCH] [+] Allow ftk as an auth token --- src/main/java/icu/samnyan/aqua/sega/allnet/AllNetSecure.kt | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/icu/samnyan/aqua/sega/allnet/AllNetSecure.kt b/src/main/java/icu/samnyan/aqua/sega/allnet/AllNetSecure.kt index 26677d81..23b63957 100644 --- a/src/main/java/icu/samnyan/aqua/sega/allnet/AllNetSecure.kt +++ b/src/main/java/icu/samnyan/aqua/sega/allnet/AllNetSecure.kt @@ -1,6 +1,7 @@ package icu.samnyan.aqua.sega.allnet import ext.Str +import icu.samnyan.aqua.net.FrontierProps import jakarta.servlet.http.HttpServletRequest import jakarta.servlet.http.HttpServletRequestWrapper import jakarta.servlet.http.HttpServletResponse @@ -25,6 +26,7 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer class TokenChecker( val keyChipRepo: KeyChipRepo, val keychipSessionService: KeychipSessionService, + val frontierProps: FrontierProps, ) : HandlerInterceptor { val log = LoggerFactory.getLogger(TokenChecker::class.java) @@ -41,8 +43,10 @@ class TokenChecker( // Check whether the token exists in the database // The token can either be a keychip id (old method) or a session id (new method) + // Or the frontier token val session = keychipSessionService.find(token) - if (token.isNotBlank() && (keyChipRepo.existsByKeychipId(token) || session != null)) + if (token.isNotBlank() && (keyChipRepo.existsByKeychipId(token) || session != null + || (frontierProps.enabled && frontierProps.ftk == token))) { // Forward the request val w = RewriteWrapper(req, token).apply { setAttribute("token", token) }