From ea188d02042998a036138238de3ed6a3de60bdb1 Mon Sep 17 00:00:00 2001 From: LightJack05 <66321084+LightJack05@users.noreply.github.com> Date: Wed, 21 Jan 2026 10:39:33 +0100 Subject: [PATCH 1/2] feat: added user 'foo' as test user to allow for local debugging - sets the username to 'foo' when running in local debugging mode, to allow for debugging of apps requiring a username --- go.mod | 2 +- go.sum | 2 ++ middleware.go | 10 ++++++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/go.mod b/go.mod index f14d736..a3377cc 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/SnackLog/auth-lib go 1.25.5 require ( - github.com/SnackLog/service-config-lib v0.1.3 + github.com/SnackLog/service-config-lib v0.2.0 github.com/gin-gonic/gin v1.11.0 ) diff --git a/go.sum b/go.sum index e75f1b2..fab2042 100644 --- a/go.sum +++ b/go.sum @@ -1,5 +1,7 @@ github.com/SnackLog/service-config-lib v0.1.3 h1:cEsiUf8LK6uAlzclR3OplZUUOc/zIYCvjDIccvpU58U= github.com/SnackLog/service-config-lib v0.1.3/go.mod h1:FekzUIjuiOjTfOisRBFt8sBS+fOW8nGrAxNPoxY7Yo0= +github.com/SnackLog/service-config-lib v0.2.0 h1:LebIe1sBFSK+uUgjHxLQ3qJDZUfTYXr4Rxsm2RBPjZI= +github.com/SnackLog/service-config-lib v0.2.0/go.mod h1:FekzUIjuiOjTfOisRBFt8sBS+fOW8nGrAxNPoxY7Yo0= github.com/bytedance/sonic v1.14.0 h1:/OfKt8HFw0kh2rj8N0F6C/qPGRESq0BbaNZgcNXXzQQ= github.com/bytedance/sonic v1.14.0/go.mod h1:WoEbx8WTcFJfzCe0hbmyTGrfjt8PzNEBdxlNUO24NhA= github.com/bytedance/sonic/loader v0.3.0 h1:dskwH8edlzNMctoruo8FPTJDF3vLtDT0sXZwvZJyqeA= diff --git a/middleware.go b/middleware.go index b586fcf..6eeb732 100644 --- a/middleware.go +++ b/middleware.go @@ -4,6 +4,7 @@ import ( "encoding/json" "fmt" "io" + "log" "net/http" serviceconfig "github.com/SnackLog/service-config-lib" @@ -14,7 +15,16 @@ type authServiceResponse struct { Username string `json:"username"` } +func bypassLogic(c *gin.Context) { + log.Println("\033[1;31mWARNING: DEBUG_BYPASS_AUTH_MIDDLEWARE is enabled, bypassing authentication and setting user to 'foo'!\033[0m") + c.Set("username", "foo") +} + func Authentication(c *gin.Context) { + if serviceconfig.GetConfig().DebugBypassAuthMiddleware { + bypassLogic(c) + return + } authHeader := c.GetHeader("Authorization") requestUrl := fmt.Sprintf("%s/%s", serviceconfig.GetConfig().ApiRootUrl, "auth/session") request, err := http.NewRequest("GET", requestUrl, nil) From 0246519c070e54d94ecbb20d60db0836f88879f9 Mon Sep 17 00:00:00 2001 From: LightJack05 <66321084+LightJack05@users.noreply.github.com> Date: Wed, 21 Jan 2026 10:43:49 +0100 Subject: [PATCH 2/2] Added c.next call to middleware bypass function --- middleware.go | 1 + 1 file changed, 1 insertion(+) diff --git a/middleware.go b/middleware.go index 6eeb732..c2ce01b 100644 --- a/middleware.go +++ b/middleware.go @@ -18,6 +18,7 @@ type authServiceResponse struct { func bypassLogic(c *gin.Context) { log.Println("\033[1;31mWARNING: DEBUG_BYPASS_AUTH_MIDDLEWARE is enabled, bypassing authentication and setting user to 'foo'!\033[0m") c.Set("username", "foo") + c.Next() } func Authentication(c *gin.Context) {