Ядро asp.net Jwt Tokenl Проблемы с SSL - PullRequest
0 голосов
/ 21 ноября 2018

Мы запускаем несколько основных API-интерфейсов aspnet в Docker Swarm с nginx в качестве обратного прокси-сервера.

Мы уже некоторое время запускаем эту установку без каких-либо проблем.Однако недавно мы добавили SSL-сертификат, полученный от letsencrypt.С тех пор мы замечаем, что после того, как мы достигли конечной точки / api / TokenAuth / Authenticate и получили назначение токена Bearer, если мы попытаемся сделать последующий вызов с использованием только что назначенного токена, вызов иногда завершится неудачно, и мы получим 302 (это работаетоколо 40% времени).Кажется, что если мы попытаемся использовать тот же самый токен через некоторое время, вызов сработает.

Странно, что это кажется проблемой, только если у нас включен ssl (https).

Я не могу повторить проблему локально.Кажется, он появляется только тогда, когда api развернут на нашем рое докера (где nginx работает, а api - в качестве контейнеров, nginx обрабатывает ssl-сертификат).

Кто-нибудь знает, что это за проблема?Кто-нибудь испытывал что-то подобное, прежде чем это могло бы указать мне правильное направление?

Ниже представлены две консоли: Верхняя часть - пример ее работы, и я получил ожидаемые результаты.Внизу - ответ, когда он терпит неудачу.enter image description here

1 Ответ

0 голосов
/ 21 ноября 2018

Я нашел проблему.У нас есть 3 экземпляра / реплики API, которые настроены для выдачи токена.Серверное время на каждом сервере отключено на секунды.Поэтому, если сервер, который выдает токен, опережает сервер, который обрабатывает последующий запрос, токен еще не действителен.

...