Russian Qt Forum
Ноябрь 22, 2024, 16:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Авторизация в приложении  (Прочитано 5458 раз)
3eJIeHbIu
Новичок

Offline Offline

Сообщений: 4


Просмотр профиля
« : Ноябрь 11, 2021, 15:24 »

Подскажите с чего начать? Необходимо реализовать простую систему авторизации в приложении Qt. Ввёл логин и пароль - вошёл, сохранил - вышел. Пришёл в к тому что мне нужна SQLite. А дальше как? Хожу вокруг да около. Пароль и логин сохраняется в таблицы? Объясните.
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #1 : Ноябрь 11, 2021, 16:12 »

самое простое решение — писать их в QSettings
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
3eJIeHbIu
Новичок

Offline Offline

Сообщений: 4


Просмотр профиля
« Ответ #2 : Ноябрь 11, 2021, 16:21 »

Сторонний пользователь имеет возможность прочесть файл с паролем.
Записан
Apktyc
Самовар
**
Offline Offline

Сообщений: 133


Просмотр профиля
« Ответ #3 : Ноябрь 11, 2021, 16:36 »

Сторонний пользователь имеет возможность прочесть файл с паролем.
Храните хэш (https://doc.qt.io/qt-5/qcryptographichash.html)
Записан
3eJIeHbIu
Новичок

Offline Offline

Сообщений: 4


Просмотр профиля
« Ответ #4 : Ноябрь 11, 2021, 16:50 »

Иными словами, хэшировать настройки приложения qsettings ещё проще чем использовать sqlite?
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #5 : Ноябрь 11, 2021, 17:03 »

сохранять хэшированный пароль, конечно же, и сравнивать хэши при попытке авторизации. сами настройки хэшировать не надо.
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
3eJIeHbIu
Новичок

Offline Offline

Сообщений: 4


Просмотр профиля
« Ответ #6 : Ноябрь 11, 2021, 17:11 »

Я это и имел ввиду  Улыбающийся . Этот подход проще чем использовать бд?
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #7 : Ноябрь 11, 2021, 21:31 »

намного.

сторонний пользователь тоже может прочесть бд, пароли в нее тоже писать надо хэшированными.
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
juvf
Программист
*****
Offline Offline

Сообщений: 570


Просмотр профиля
« Ответ #8 : Ноябрь 15, 2021, 08:51 »

Подскажите с чего начать? Необходимо реализовать простую систему авторизации в приложении Qt. Ввёл логин и пароль - вошёл, сохранил - вышел. Пришёл в к тому что мне нужна SQLite. А дальше как? Хожу вокруг да около. Пароль и логин сохраняется в таблицы? Объясните.

ps Пароли ни когда ни где не хранятся. Ни открытые, ни зашифрованные, ни в БД, ни в сеттингах. Хранятся только хэши паролей. Если вы забудете например пароль linux, то даже обладая правами суперпользователя вы его не восстановите и ни где не посмотрите. Вы только сможете его сбросить и назначить новый. Если вы в онлайн-банке/почте/магазине/др.сервисе забудете пароль, вам его ни кто не "вспомнит", не покажет и не восстановит, даже если вы прийдёте в банк с паспортом. Админ, в лучшем случае, сбросит старый пароль и назначит новый (или вам даст возможность назначить новый). Это сделано для того, чтобы без вас на ваш акаунт не было доступа даже у сотрудников банка администратора сервиса.
Записан
RedDog
Частый гость
***
Offline Offline

Сообщений: 221


Просмотр профиля
« Ответ #9 : Ноябрь 20, 2021, 22:38 »

Если вы в онлайн-банке/почте/магазине/др.сервисе забудете пароль, вам его ни кто не "вспомнит", не покажет и не восстановит, даже если вы прийдёте в банк с паспортом. Админ, в лучшем случае, сбросит старый пароль и назначит новый (или вам даст возможность назначить новый). Это сделано для того, чтобы без вас на ваш акаунт не было доступа даже у сотрудников банка администратора сервиса.
Ха-ха, попробуйте зайти в сбер, введя свой пароль в любом регистре. Уверяю, это получится.
Записан
tux
Global Moderator
Бывалый
*****
Offline Offline

Сообщений: 404



Просмотр профиля
« Ответ #10 : Ноябрь 21, 2021, 11:52 »

Ха-ха, попробуйте зайти в сбер, введя свой пароль в любом регистре. Уверяю, это получится.
Сбер - это изменённое название "сберегательной кассы советского союза". Только вывеску сменили  Смеющийся
Им на деньги клиентов было всегда плевать. Хоть в СССР, хоть сейчас.

А так, да - надо хранить хэш. Если паранойя шибко заест, можно солью посыпать.
Записан

juvf
Программист
*****
Offline Offline

Сообщений: 570


Просмотр профиля
« Ответ #11 : Ноябрь 24, 2021, 08:35 »

Ха-ха, попробуйте зайти в сбер, введя свой пароль в любом регистре. Уверяю, это получится.
И? Сотрудник банка может где-нить у себя на сервере посмотреть ваш пароль? Пароль не пробовал, а вот логин да - СБ не различает регистры. Но какая разница - различает веб страница у СБ регистр в пароле/логине или нет?  Это не значит, что они хранят пароли в открытом виде.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.052 секунд. Запросов: 22.