Skip to content

feat(proxy): add incoming TLS - #80

Open
P4ST4S wants to merge 1 commit into
feat/http-security-hardening-68from
feat/incoming-tls
Open

feat(proxy): add incoming TLS#80
P4ST4S wants to merge 1 commit into
feat/http-security-hardening-68from
feat/incoming-tls

Conversation

@P4ST4S

@P4ST4S P4ST4S commented Aug 23, 2026

Copy link
Copy Markdown
Owner

Summary

Ajoute le TLS entrant optionnel au proxy HTTP avec chargement anticipé du certificat et de la clé, TLS 1.2 minimum et refus des configurations ambiguës.

Context

Suite du durcissement HTTP de #68, empilée sur #79.

Approach

  • ajoute les clés proxy.tls.enabled, proxy.tls.cert_file et proxy.tls.key_file ;
  • charge et valide la paire X.509 avant le démarrage du serveur ;
  • utilise le serveur HTTPS natif avec une version minimale TLS 1.2 ;
  • refuse les fichiers présents lorsque TLS est désactivé, les paires partielles et TLS en transport stdio ;
  • conserve sans changement la configuration TLS sortante vers l’upstream.

Test plan

  • go test -race ./... — passe
  • go build ./... — passe
  • go vet ./... — passe
  • handshake TLS client/serveur réel avec certificat auto-signé — passe
  • tests des configurations TLS entrantes invalides — passent

Stability impact

Ajoute trois clés de configuration stables et optionnelles sous proxy.tls. Le défaut reste HTTP sans TLS ; les configurations existantes conservent leur comportement.

Notes for reviewer

Le mTLS client entrant reste hors périmètre ; l’authentification JWT/OIDC est traitée dans les PR dédiées du plan.

@codecov-commenter

Copy link
Copy Markdown

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

❌ Patch coverage is 70.00000% with 12 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
cmd/mcp-audit/main.go 60.00% 6 Missing ⚠️
internal/proxy/http.go 76.00% 6 Missing ⚠️

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants