Safari 11 X-XSRF-TOKEN não atualizado após a atualização

Recentemente, o Safari 11 foi lançado no Mac OSX. Esta atualização causa um problema com nosso aplicativo da web em combinação com o XSRF no cabeçalho do nosso novo pedido. Vou tentar descrever o problema de uma maneira lógica. É assim que uma boa situação seria:

Quando um usuário deseja efetuar login, ele recebe uma resposta do servidor com um Set-Cookie que contém o valor do token XSRF.Eg: Set-Cookie: XSRF-TOKEN=LKNBX4DZhL708KjXNkgXnlxTDCNuhsZG1kTc2SFy498; Path=/; Secure

A página é atualizada A próxima chamada que será executada contém o valor XSRF correto no cabeçalho. No lado do servidor, o valor é verificado etc. Cada chamada do front end conterá esse token XSRF.

Se o usuário efetuar logout e desejar efetuar login novamente, seu cookie XSRF será substituído por um novo valor e poderá efetuar login com esse token.

Nossa situação problemática (com o Safari 11 no Mac OSX, outro navegador não mostra esse comportamento):

Se não houver cookies, o usuário poderá efetuar login normalmente

No entanto, se ele quiser efetuar login novamente (após uma sessão anterior), a atualização ocorrerá. Na primeira chamada, a atualização que o token XSRF em sua chamada não é substituída pelo novo valor, eles ainda contêm o token XSRF antigo da sessão anterior. Quando inspecionamos essa solicitação, vemos que os cookies dessa solicitação contêm o valor correto, mas o cabeçalho está refletindo o token antigo.

Essa chamada com o cabeçalho errado causa o fechamento de uma sessão no back-end e o usuário é expulso da sessão. TLDR; no Safari 11, o cabeçalho XSRF-TOKEN não é atualizado de acordo com o valor do cookie após uma atualização. Temos isso funcionando em versões mais antigas e em outros navegadores, que pensamos ser um bug do Safar 11.

Alguém mais está enfrentando um tipo semelhante de problema? Onde um valor de cabeçalho de uma solicitação não é atualizado após uma atualização de página no Safari 11?

EDIT: Após o teste, descobrimos que a colocação de um carimbo de data / hora no URL como parâmetro de consulta força o Safari 11 a enviar a solicitação correta. Parece que alguns pedidos são armazenados em cache e os cabeçalhos atualizados são ignorados.

Muito obrigado!

questionAnswers(1)

yourAnswerToTheQuestion