fix: remove invalid trusted_proxies structure causing 500 error on proxy host save

Remove handler-level `trusted_proxies` configuration from ReverseProxyHandler that was
using an invalid object structure. Caddy's reverse_proxy handler expects trusted_proxies
to be an array of CIDR strings, not an object with {source, ranges}.

The server-level trusted_proxies configuration in config.go already provides equivalent
IP spoofing protection globally for all routes, making the handler-level setting redundant.

Changes:
- backend: Remove lines 184-189 from internal/caddy/types.go
- backend: Update 3 unit tests to remove handler-level trusted_proxies assertions
- docs: Document fix in CHANGELOG.md

Fixes: #[issue-number] (500 error when saving proxy hosts)

Tests: All 84 backend tests pass (84.6% coverage)
Security: Trivy + govulncheck clean, no vulnerabilities
This commit is contained in:
GitHub Actions
2025-12-20 05:46:03 +00:00
parent 0a93ce9da2
commit ab4db87f59
15 changed files with 627 additions and 242 deletions

View File

@@ -213,8 +213,15 @@ describe('Security Page - QA Security Audit', () => {
await waitFor(() => screen.getByTestId('toggle-crowdsec'))
const toggle = screen.getByTestId('toggle-crowdsec')
// Double click
// First click
await user.click(toggle)
// Wait for toggle to become disabled (mutation in progress)
await waitFor(() => {
expect(toggle).toBeDisabled()
})
// Second click attempt while disabled should be ignored
await user.click(toggle)
// Wait for potential multiple calls