feat: protect required endpoints by oauth

This commit is contained in:
2025-06-02 23:15:02 +02:00
parent 9ee30d1e23
commit ce44ef3e62

View File

@ -2,6 +2,7 @@ package oauth
import ( import (
"gitea.local/admin/hspguard/internal/config" "gitea.local/admin/hspguard/internal/config"
imiddleware "gitea.local/admin/hspguard/internal/middleware"
"gitea.local/admin/hspguard/internal/repository" "gitea.local/admin/hspguard/internal/repository"
"github.com/go-chi/chi/v5" "github.com/go-chi/chi/v5"
) )
@ -20,9 +21,13 @@ func NewOAuthHandler(repo *repository.Queries, cfg *config.AppConfig) *OAuthHand
func (h *OAuthHandler) RegisterRoutes(router chi.Router) { func (h *OAuthHandler) RegisterRoutes(router chi.Router) {
router.Route("/oauth", func(r chi.Router) { router.Route("/oauth", func(r chi.Router) {
r.Post("/token", h.tokenEndpoint) r.Group(func(protected chi.Router) {
authMiddleware := imiddleware.NewAuthMiddleware(h.cfg)
protected.Use(authMiddleware.Runner)
r.Post("/code", h.getAuthCode) protected.Post("/code", h.getAuthCode)
})
r.Get("/authorize", h.AuthorizeClient) r.Get("/authorize", h.AuthorizeClient)
r.Post("/token", h.tokenEndpoint)
}) })
} }