diff --git a/app/admin/admin.go b/app/admin/admin.go index a19e394..90cbcb8 100644 --- a/app/admin/admin.go +++ b/app/admin/admin.go @@ -219,8 +219,10 @@ func (h *Handler) uiCredentials(w http.ResponseWriter, r *http.Request) { // НЕ вызывает PingNubesAPI повторно — токен уже провалидирован при /ui/api/auth. func (h *Handler) jwtMiddleware(next http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - // /ui/api/auth — публичный endpoint, пропускаем без проверки JWT - if strings.HasSuffix(r.URL.Path, "/auth") { + // /ui/api/auth — публичный endpoint, пропускаем без проверки JWT. + // Сравниваем ТОЧНЫЙ путь, а не суффикс "/auth": иначе, например, + // DELETE /ui/api/tenants/{id}/queues/auth пропускался бы без JWT и IDOR-проверки. + if r.URL.Path == "/ui/api/auth" { next.ServeHTTP(w, r) return }