Токен JWT с полезной нагрузкой URL за прокси - PullRequest
0 голосов
/ 19 сентября 2018

В настоящее время я генерирую токены JWT (фактически JWS) из приложения, доступного через публичный адрес, как показано ниже:

https://api.publicdomain.com

токенсодержит полезную нагрузку, сгенерированную сервером:

{
    "uid": "7a7c5cdd-c08f-4241-b2c1-c97d291b06d0",
    "issuedOn": 1536334767,
    "publicKey": "http://api.privatedomain.lan:7777/public-key.pem"
}

Сервер должен поместить URL-адреса в полезную нагрузку для проверки.В этом примере мой сервер фактически развернут за обратным прокси-сервером по следующему адресу:

http://api.privatedomain.lan:7777/

В настоящее время я использую URL хоста приложенияпоэтому при создании этой полезной нагрузки генерируется URL-адрес из фактического приложения - https://api.publicdomain.com - а не общедоступный URL-адрес - https://api.privatedomain.lan:7777/.

Обратный прокси-сервер обрабатывает перезапись URL-адресов для моих ответов jsonи все остальное, но я не думаю, что обратный прокси должен обрабатывать перезапись URL в токене JWT.Итак, как мое приложение должно это обрабатывать?

Я вижу два решения:

  1. Сервер приложений знает, что он развернут за обратным прокси-сервером и жесткими кодами https://api.publicdomain.com в полезной нагрузке
  2. Прокси-сервер отправляет дополнительный HTTP-заголовок (есть ли для этого стандарт?), Который приложение использует для создания полезной нагрузки.

Я думаю, что №2 лучше, но я хотел бы иметьпредставление о том, каков общий подход к решению этой проблемы, и если я пропустил другие подходы.

...