HTTPS или JWT для аутентификации? - PullRequest
0 голосов
/ 19 мая 2018

Я собираюсь реализовать свой метод аутентификации, используя JWT в узле js.Некоторое время я искал разные способы аутентификации и, наконец, решил использовать JWT.Однако я не совсем понимаю аутентификацию на основе JWT.

Вот мой вопрос: следует ли отправлять JWT по HTTPS?если да, то зачем вообще использовать JWT? и почему бы не отправлять всю необходимую информацию по HTTPS без JWT ?

Другими словами, когда есть проблемы с безопасностью без HTTPS (например, атака «человек посередине»), в чем причинаиспользования JWT для аутентификации?Есть ли другой подход аутентификации, который отлично работает без использования HTTPS?

Ответы [ 2 ]

0 голосов
/ 20 мая 2018

Чтобы расширить @ gusto2

JWT и HTTPS достигают разных целей.Три основных компонента систем безопасности.

  • C - Конфиденциальность - Защищены ли данные от посторонних, которые их читают?
  • I - Целостность - Защищены ли данные от посторонних, подделывающих их?
  • A - Подлинность - это данные, отправленные соответствующим лицом

HTTPS обеспечивает конфиденциальность и целостность.JWT помогает с подлинностью.Однако ваша задача - убедиться, что токены действительны.Это не предусмотрено из коробки.

0 голосов
/ 20 мая 2018

Здесь вы смешиваете два разных уровня протокола.

HTTPS (или, скорее, TLS - безопасность на транспортном уровне) - это транспортный уровень - транспортный канал данных, обеспечивающий связь с легитимным сервером и то, что никто не сможет прочитать или изменить обмен данными.HTTPS не заботится о самих данных (например, аутентификации)

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

Чаще всего вам нужны оба - JWT для обеспечения аутентификации или авторизации и TLS / HTTPS, чтобы никто не мог украсть или изменить ваш токен или данные JWT.

HTTPS может обеспечить аутентификацию клиента, но клиент должен иметь свою клиентскую пару ключей и сертификат, который на самом деле не является бесплатным или простым в управлении (например, так работают электронные идентификационные карты или я часто вижу его на сервере).серверные сценарии).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...