feat(shared-sqs): remove auth from UI, add public /ui/api/ routes (v0.1.5)

- Public routes /ui/api/* without bearer token for demo
- UI loads dashboard immediately, no login required
- Admin API /admin/* still requires bearer token
- For demo purposes only — auth will be restored later
This commit is contained in:
“Naeel”
2026-04-09 18:23:17 +03:00
parent 12b3bb9bf3
commit 70c276b4e7
3 changed files with 127 additions and 165 deletions
+12
View File
@@ -39,6 +39,18 @@ func (h *Handler) RegisterRoutes(r *mux.Router) {
adminRouter.HandleFunc("/health", h.detailedHealth).Methods("GET")
}
// RegisterPublicRoutes — публичные маршруты для UI console (без auth)
// Дублируют admin API, но доступны без bearer token для удобства демо
func (h *Handler) RegisterPublicRoutes(r *mux.Router) {
ui := r.PathPrefix("/ui/api").Subrouter()
ui.HandleFunc("/health", h.detailedHealth).Methods("GET")
ui.HandleFunc("/tenants", h.listTenants).Methods("GET")
ui.HandleFunc("/tenants", h.createTenant).Methods("POST")
ui.HandleFunc("/tenants/{id}", h.getTenant).Methods("GET")
ui.HandleFunc("/tenants/{id}", h.deleteTenant).Methods("DELETE")
ui.HandleFunc("/tenants/{id}/queues", h.listTenantQueues).Methods("GET")
}
// bearerAuthMiddleware — проверяет Bearer token для admin API (Trap #12)
func (h *Handler) bearerAuthMiddleware(next http.Handler) http.Handler {
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {