- Expédié
- 23 septembre 2026 à 10:21 UTC
- Auteur
- Kamo
- Commite
- 65f3228
forward() régler le X-Real-IP sortant à X-Forwarded-For.split("," [0-[0------------------------------- le saut LEFT le plus, qui est la partie de cet en-tête qu'un client contrôle purement et simplement: une demande portant le "X-Forwarded-For: 8.8.8.8" arrive à Traefik, qui ajoute l'adresse qu'il a effectivement vue, et l'en-tête devient "8.8.8.8, "récidive client". EconsentCutteur de SecurityService mémorise le X-Real-IP in extenso de cette passerelle sur un enregistrement légal de consentement électronique, donc tout visiteur pourrait témoigner de l'adresse qu'il a souhaitée simplement en envoyant leur propre X-Forwarded-For. ClientIpResolver ajouté (com.kamo.api.app.config), qui parcourt la liste de droite et prend le premier saut PUBLIC -- tout à droite du vrai client est notre propre infrastructure, et un saut dans le groupe est toujours privé et sauté. C'est le même algorithme AccessEnforcementFilter avait déjà, privé pour lui-même, pour juger les règles d'accès par IP; ce filtre est désormais délégué à la classe extraite au lieu de conserver sa propre copie, donc forward() et le filtre sont d'accord par construction plutôt que par deux auteurs obtenant indépendamment la même 9 lignes à droite. X-Forwarded-Forwarded-Fore-Pour elle-même est inchangé - toujours transmis tel que reçu (ou synthétisé de la socket pair en cas d'absence). La même règle du plus grand public est dupliquée par service dans l'ensemble de la Plateforme (SescurleService's ClientIpResolver, ESigService's EsignClientIp, DocsService's LegalClientIp) à cause de ceux-ci les services sont importables d'un autre; il s'agit d'une copie d'apservice. XRealIpForwardingTest entraîne une demande réelle transmise portant une usurpation usurpée saut gauche devant un véritable et affirme la demande en amont X-Real-IP est l'adresse authentique, plus qu'un houblon interne joint après que le client réel a été sauté. ClientIpResolverTest couvre la un résolveur directement. Retour à la division la plus gauche échoue XRealIpForwardingTest immédiatement.
