Прошу простить мое невежество, потому что у меня почти нет опыта веб-разработки.
Я реализовал простой механизм, в котором я использую пароль пользователя (отправленный как параметр post / get) и сохраняю его в базе данных. После успешного входа в систему я возвращаю идентификатор пользователя (PK в базе данных) обратно клиенту. Последующие запросы должны иметь идентификатор пользователя, который используется как примитивный механизм для проверки запросов.
Я читал о нескольких механизмах, начиная с простой проверки подлинности HTTP, используя соленый хеш (который я использую), реализуя токены доступа к, казалось бы, сложной аутентификации OAuth
. Ах! и, возможно, наконец, о https
.
Оставляя в стороне последние два, о которых я все еще достаточно разбираюсь, у меня, похоже, есть очень простой вопрос, на который я не смог найти ответа.
Мне жаль, что это не прямой вопрос программирования, но причина, по которой я спрашиваю, я не могу найти ответ на Google или, вернее, не использую правильные ключевые слова для поиска.
Вопрос в том, что с учетом всех механизмов токенов доступа и ключей api и т. Д., Даже если бы я должен был реализовать этот механизм, но не использовать https, есть ли смысл в их реализации? Я имею в виду, что кто-то может понюхать мой ясный текстовый пароль или идентификатор пользователя, он также сможет заглянуть в маркер / ключ и использовать его впоследствии со злым умыслом, тем самым делая весь механизм бесполезным. Означает ли это, что https является единственным действительно безопасным вариантом?
Мне, должно быть, что-то не хватает, но указатели будут очень благодарны.