![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
||||
|
||||
|
Ребят, помогите пожалуйста статейкой или книжкой где адекватно даётся мат.часть по авторизации пользователей в программе с использованием (хранением учётных записей) БД. Говно-код, вроде того, что проверяет данные в InputBox на этапе инициализации Application не предлагать
![]() Общая идея, я так понял, выглядит так: Код:
MainForm.OnCreate
with TFormLogin.Create(self) do
try
if вызов метода Auth, который возвращает true\false при авторизации then
не знаю что тут писать. По идее ничего, просто пропустить к методу Free;
else
а если авторизация не прошла как адекватно пропустить к методу Free, и при этом закрыть MainForm?
finally
Free;
end;Код:
Result := false;
While not Result do
if ShowModal = mrOK
if возможно связаться с удалённой БД then
if данные совпадают then
Result := True
else
по идее нужно добавить какой-то счётчик на количество попытокВозникают следующие вопросы: а если к БД не будет доступа, что тогда? Пользователь не сможет работать с программой?) В каком виде хранить пароли в БД? Cash какого-нибудь RSA(пароль) и сравнивать тогда уже только хеши? Последний раз редактировалось Uniq!, 17.07.2014 в 09:51. |
|
#2
|
||||
|
||||
|
Цитата:
![]() Цитата:
|
|
#3
|
||||
|
||||
|
Цитата:
Я правильно понимаю, что можно воспользоваться APIшными функциями самой винды, чтоб создать Хеш? |
|
#4
|
||||
|
||||
|
А есть такие? В исходниках Indy вроде самопал какой-то.
|
|
#5
|
||||
|
||||
|
Цитата:
Вот MSDN-ссылка Ну и статья по теме: Delphi и Windows API для защиты секретов |
| Этот пользователь сказал Спасибо Uniq! за это полезное сообщение: | ||
Freeman (18.07.2014)
| ||
|
#6
|
||||
|
||||
|
Цитата:
|