Fix client IP address detection to show real user IP instead of AppGateway internal IP #828
+13
−8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.



Summary & Motivation
Fix the Sessions dialog showing the AppGateway's internal IP address (e.g.,
10.0.0.54) instead of the user's real public IP address. This regression was introduced in commitc67bdacwhich added YARP'sAddXForwardedtransform.AddXForwarded()transform from AppGateway, which was replacing the originalX-Forwarded-Forheader set by Azure Container Apps ingressHttpExecutionContext.ClientIpAddressto read theX-Forwarded-Forheader directly and extract the first IP address (the original client), with a fallback toRemoteIpAddressfor local developmentThe previous approach relied on
UseForwardedHeadersmiddleware processing the header correctly across multiple proxy hops, but YARP'sAddXForwardedtransform was overwriting the header with the wrong IP before it reached the backend API.Checklist