@Emeralldo
Junior Vue.js developer

Как сделать авторизацию без использования сервера?

Необходимо сделать простую авторизацию.
При вводе любого логина/пароля генерировать токен и сохранять в localStorage. Без
токена не пускать пользователя на сайт. Я использую Vue-cli-3, и не совсем понимаю как туда прикрутить сервер и запросы к нему, поэтому планирую сделать все через клиентскую часть. Как вариант - хранить данные о пользователях (логин, пароль зашифрованный, токен и информацию) в том же LocalStorage или в SessionStorage, а токен активного пользователя - в куки или сессию, и сравнивать их между собой. Я почти уверен что это неправильно, можете подсказать варианты? Вариант с сервером и бд не нужен, необходимо просто реализовать функционал, описанный выше
  • Вопрос задан
  • 484 просмотра
Пригласить эксперта
Ответы на вопрос 3
b0nn1e
@b0nn1e
Alcohol & Ruby on Rails
Как сделать авторизацию без использования сервера?

никак
Ответ написан
Комментировать
darakanoit
@darakanoit
По сути,можно завести какой-нибудь текстовый файл с логинами и паролями(пользователями)
и валидировать по нему.
Всё это дело зашифровать и вперёд.(Чисто в теории)
Ответ написан
Комментировать
@rPman
Без серверная авторизация возможна, это когда вы генерируете приватный ключ ассиметричного шифрования (когда на клиенте 'создаете аккаунт') а публичный отправляете 'всем кто будет хотеть читать ваши сообщения', т.е. шифруя сообщения и вообще всю коммуникацию своим приватным ключом, прочитать его смогут только те кто будет расшифровывать их вашим публичным ключом (и кстати наоборот, чтобы вам послали сообщение - отправитель шифрует его публичным ключом, а вы расшифровываете его приватным).

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

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

И конечно же главное неудобство для пользователя - его аккаунт не хранится где то на сервере, а размещен на диске пользователя, и для 'подключения' с другого усстройства необходимо эти приватные и публичные ключи как то синхронизировать между ними.

p.p.s. не майтесь дурью, сделайте все правильно на сервере.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы