Russian Qt Forum
Ноябрь 22, 2024, 16:22
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
Авторизация в приложении
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Авторизация в приложении (Прочитано 5458 раз)
3eJIeHbIu
Новичок
Offline
Сообщений: 4
Авторизация в приложении
«
:
Ноябрь 11, 2021, 15:24 »
Подскажите с чего начать? Необходимо реализовать простую систему авторизации в приложении Qt. Ввёл логин и пароль - вошёл, сохранил - вышел. Пришёл в к тому что мне нужна SQLite. А дальше как? Хожу вокруг да около. Пароль и логин сохраняется в таблицы? Объясните.
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Авторизация в приложении
«
Ответ #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
Сообщений: 4
Re: Авторизация в приложении
«
Ответ #2 :
Ноябрь 11, 2021, 16:21 »
Сторонний пользователь имеет возможность прочесть файл с паролем.
Записан
Apktyc
Самовар
Offline
Сообщений: 133
Re: Авторизация в приложении
«
Ответ #3 :
Ноябрь 11, 2021, 16:36 »
Цитата: 3eJIeHbIu от Ноябрь 11, 2021, 16:21
Сторонний пользователь имеет возможность прочесть файл с паролем.
Храните хэш (
https://doc.qt.io/qt-5/qcryptographichash.html
)
Записан
3eJIeHbIu
Новичок
Offline
Сообщений: 4
Re: Авторизация в приложении
«
Ответ #4 :
Ноябрь 11, 2021, 16:50 »
Иными словами, хэшировать настройки приложения qsettings ещё проще чем использовать sqlite?
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Авторизация в приложении
«
Ответ #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
Сообщений: 4
Re: Авторизация в приложении
«
Ответ #6 :
Ноябрь 11, 2021, 17:11 »
Я это и имел ввиду
. Этот подход проще чем использовать бд?
Записан
kambala
Джедай : наставник для всех
Offline
Сообщений: 4747
Re: Авторизация в приложении
«
Ответ #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
Сообщений: 570
Re: Авторизация в приложении
«
Ответ #8 :
Ноябрь 15, 2021, 08:51 »
Цитата: 3eJIeHbIu от Ноябрь 11, 2021, 15:24
Подскажите с чего начать? Необходимо реализовать простую систему авторизации в приложении Qt. Ввёл логин и пароль - вошёл, сохранил - вышел. Пришёл в к тому что мне нужна SQLite. А дальше как? Хожу вокруг да около. Пароль и логин сохраняется в таблицы? Объясните.
ps Пароли ни когда ни где не хранятся. Ни открытые, ни зашифрованные, ни в БД, ни в сеттингах. Хранятся только хэши паролей. Если вы забудете например пароль linux, то даже обладая правами суперпользователя вы его
не восстановите
и ни где не посмотрите. Вы только сможете его сбросить и назначить новый. Если вы в онлайн-банке/почте/магазине/др.сервисе забудете пароль, вам его ни кто не "вспомнит", не покажет и не восстановит, даже если вы прийдёте в банк с паспортом. Админ, в лучшем случае, сбросит старый пароль и назначит новый (или вам даст возможность назначить новый). Это сделано для того, чтобы без вас на ваш акаунт не было доступа даже у
сотрудников банка
администратора сервиса.
Записан
RedDog
Частый гость
Offline
Сообщений: 221
Re: Авторизация в приложении
«
Ответ #9 :
Ноябрь 20, 2021, 22:38 »
Цитата: juvf от Ноябрь 15, 2021, 08:51
Если вы в онлайн-банке/почте/магазине/др.сервисе забудете пароль, вам его ни кто не "вспомнит", не покажет и не восстановит, даже если вы прийдёте в банк с паспортом. Админ, в лучшем случае, сбросит старый пароль и назначит новый (или вам даст возможность назначить новый). Это сделано для того, чтобы без вас на ваш акаунт не было доступа даже у
сотрудников банка
администратора сервиса.
Ха-ха, попробуйте зайти в сбер, введя свой пароль в любом регистре. Уверяю, это получится.
Записан
tux
Global Moderator
Бывалый
Offline
Сообщений: 404
Re: Авторизация в приложении
«
Ответ #10 :
Ноябрь 21, 2021, 11:52 »
Цитата: RedDog от Ноябрь 20, 2021, 22:38
Ха-ха, попробуйте зайти в сбер, введя свой пароль в любом регистре. Уверяю, это получится.
Сбер - это изменённое название "сберегательной кассы советского союза". Только вывеску сменили
Им на деньги клиентов было всегда плевать. Хоть в СССР, хоть сейчас.
А так, да - надо хранить хэш. Если паранойя шибко заест, можно солью посыпать.
Записан
Digital Art
juvf
Программист
Offline
Сообщений: 570
Re: Авторизация в приложении
«
Ответ #11 :
Ноябрь 24, 2021, 08:35 »
Цитата: RedDog от Ноябрь 20, 2021, 22:38
Ха-ха, попробуйте зайти в сбер, введя свой пароль в любом регистре. Уверяю, это получится.
И? Сотрудник банка может где-нить у себя на сервере посмотреть ваш пароль? Пароль не пробовал, а вот логин да - СБ не различает регистры. Но какая разница - различает веб страница у СБ регистр в пароле/логине или нет? Это не значит, что они хранят пароли в открытом виде.
Записан
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...