From 5331d51f27859b45a5287593160cae9afad9c365 Mon Sep 17 00:00:00 2001 From: Supra4E8C Date: Sun, 22 Mar 2026 13:58:16 +0800 Subject: [PATCH] fix(auth): ensure absolute paths for auth file handling --- internal/api/handlers/management/auth_files.go | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/internal/api/handlers/management/auth_files.go b/internal/api/handlers/management/auth_files.go index 4d1ec44c..a718a27a 100644 --- a/internal/api/handlers/management/auth_files.go +++ b/internal/api/handlers/management/auth_files.go @@ -739,10 +739,25 @@ func (h *Handler) authIDForPath(path string) string { if path == "" { return "" } + path = filepath.Clean(path) + if !filepath.IsAbs(path) { + if abs, errAbs := filepath.Abs(path); errAbs == nil { + path = abs + } + } id := path if h != nil && h.cfg != nil { authDir := strings.TrimSpace(h.cfg.AuthDir) + if resolvedAuthDir, errResolve := util.ResolveAuthDir(authDir); errResolve == nil && resolvedAuthDir != "" { + authDir = resolvedAuthDir + } if authDir != "" { + authDir = filepath.Clean(authDir) + if !filepath.IsAbs(authDir) { + if abs, errAbs := filepath.Abs(authDir); errAbs == nil { + authDir = abs + } + } if rel, errRel := filepath.Rel(authDir, path); errRel == nil && rel != "" { id = rel }