Servidor de Autorización Spring OAuth detrás del Proxy Spring Cloud Zuul

Actualmente estoy desarrollando una aplicación basada en una arquitectura de micro servicio. Utilizamos una API-Gateway implementada con el servidor Zuul de Spring Cloud Netfix para enrutar las solicitudes a nuestros microservicios.

Para realizar el inicio de sesión único para todos nuestros servicios, actualmente estoy trabajando en un servidor OAuth2 configurado con Spring Cloud Security. El servidor es básicamente copia y pasado de la implementación en el Repo de Dave Syer:https://github.com/dsyer/spring-security-angular/tree/master/oauth2/authserver

La principal diferencia es que quiero enrutar las solicitudes a mi servidor OAuth a través del Proxy Zuul. De esta manera, no tendré que exponer directamente mi servidor OAuth y puedo agregar y eliminar el servidor de inicio de sesión de forma dinámica.

El problema es que no creo entender cómo configurar correctamente esta configuración. Cuando intento acceder a un recurso protegido en el servidor OAuth, me reenvían a la página de inicio de sesión. Esto, por supuesto, es como se esperaba. Pero no puedo entender cómo configurar el nombre de host y el puerto utilizado al reenviar. Lo que quiero que suceda es que el servidor reenvíe a un punto final en el servidor Zuul que será enviado de vuelta al servidor OAuth. (Zuul API-Gateway debería ser el único servidor con el que el cliente habla. Todo lo demás estará oculto).

Como es, el host y el puerto se leen desdeHttpServletRequest enLoginUrlAuthenticationEntryPoint. Pero la solicitud que ve el servidor es la solicitud enviada por el proxy Zuul. Entonces, me reenvían a una IP interna, no a un punto final en el proxy.

Traté de establecer la URL de la página de inicio de sesión enWebSecurityConfigurerAdapter.configure(HttpSecurity) a la URL absoluta de mi Proxy Zuul. Pero esto solo causó que mi aplicación se quejara de demasiados redireccionamientos. (Podría haber causado un bucle allí).

¿Cuál sería la mejor manera de configurar esto?

¿Tengo que implementar algún tipo de estrategia de reenvío propia anulando un bean?¿Hay una opción de configuración que me falta?¿Mi idea en sí misma está equivocada? (En su respuesta a¿Cómo evitar la redirección a otro host con Zuul? Dave Syer dice que normalmente no representaría esto, pero no explica por qué).