Gateway da API Spring Zuul com sessão Spring / Redis Authenticate e Route na mesma solicitação

Eu estive realmente pesquisando alto e baixo nos últimos dias sobre como fazer isso e finalmente decidi admitir a derrota e pedir ajuda, por favor !!!

Eu segui o tutorial do Dr. Dave Syer sobre Angular e Spring Security, especificamente o Zuul Proxy como um gateway de API e usando o Spring Session com Redis (https://github.com/spring-guides/tut-spring-security-and-angular-js/tree/master/double#_sso_with_oauth2_angular_js_and_spring_security_part_v)

O problema que estou tendo é que estou chamando serviços de descanso de recursos por meio do gateway a partir de um aplicativo externo com o seguinte cabeçalho:

String plainCreds = "user:password";
byte[] plainCredsBytes = plainCreds.getBytes();
byte[] base64CredsBytes = Base64.getEncoder().encode(plainCredsBytes);
String base64Creds = new String(base64CredsBytes);

HttpHeaders headers = new HttpHeaders();
headers.add("Authorization", "Basic " + base64Creds);

para ser autenticado e, em seguida, roteado por zuul e, em seguida, o recurso para ter acesso à sessão autenticada via redis.

O problema é que a sessão parece comprometer-se a redis no gateway após a resposta da solicitação. Então, o que está acontecendo é que, quando chamo um serviço de recurso com o cabeçalho, posso ver a autenticação bem-sucedida ocorrendo no gateway e na sessão sendo criada; no entanto, estou recebendo 403 no recurso porque a sessão não está em redis após sua foi roteado via zuul.

No entanto, se eu receber o erro, pegue o ID da sessão, adicione-o ao cabeçalho e tente novamente, pois agora minha sessão autenticada está disponível para o projeto de recurso após o roteamento.

Por favor, alguém poderia me indicar a direção de como faço para receber minhas chamadas pelo gateway para autenticar e encaminhar na mesma solicitação, por favor?

Obrigado Justin

questionAnswers(2)

yourAnswerToTheQuestion