Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Вопрос по авторизации 
:(
    Опции темы
The MASTER
  Дата 4.3.2005, 11:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Old master)
**


Профиль
Группа: Участник
Сообщений: 862
Регистрация: 19.7.2004
Где: Санкт-Петербург

Репутация: 2
Всего: 5



Подскажите пожалуйста, у меня такая система, чтобы пользователь зашёл в программу, ему необходимо из списка ComboBox выбрать аккаунт:
1) Администратор
2) Оператор

Вот подскажите как сделать, чтобы у каждого пользователя был свой пароль, который нужно вводить в поле Edit, и откуда лучше считывать пароли для каждого пользователя? smile
PM MAIL WWW ICQ   Вверх
Snowy
Дата 4.3.2005, 11:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Если пользователи под разными аккаунтами, то можно либо сохранять в реестр в HKEY\CURRENT_USER, либо куда-либо по твоему успотрению, с именем пользователя, под которым он зарегестрировался в Windows. (нужно отследить, чтобы не дублировались на разных машинах)
PM MAIL   Вверх
The MASTER
Дата 4.3.2005, 11:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Old master)
**


Профиль
Группа: Участник
Сообщений: 862
Регистрация: 19.7.2004
Где: Санкт-Петербург

Репутация: 2
Всего: 5



Тогда помогите сделать так, чтобы пароли прописывались в реестр и считывались тоже от туда и программа при нажатие кнопки войти будет сверять их, и как лучше сделать, чтобы пароль уже был какой-то? или лучше потом в программе задать?
PM MAIL WWW ICQ   Вверх
The MASTER
Дата 4.3.2005, 12:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Old master)
**


Профиль
Группа: Участник
Сообщений: 862
Регистрация: 19.7.2004
Где: Санкт-Петербург

Репутация: 2
Всего: 5



Так, что, кто нибудь поможет? smile
PM MAIL WWW ICQ   Вверх
Snowy
Дата 4.3.2005, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 11363
Регистрация: 13.10.2004
Где: Питер

Репутация: 192
Всего: 484



Пусть пользователь придумывает пароль. Шифруй его по MD5 и сохраняй результат в реестр.
Как работать с реестром - читай в DRKB или FAQ.
Также придумай, чтобы пользователь не смог 2 раза завести пароль, удалив ветку в реестре или переустановив программу.
PM MAIL   Вверх
Vit
Дата 4.3.2005, 16:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

Репутация: 48
Всего: 207



Пароли НИКОГДА не хранятся нигде. Храни хэш, сравнивай с хэшем введенного пароля...


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
The MASTER
Дата 6.3.2005, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Old master)
**


Профиль
Группа: Участник
Сообщений: 862
Регистрация: 19.7.2004
Где: Санкт-Петербург

Репутация: 2
Всего: 5



Vit А как в кэше хранить?
PM MAIL WWW ICQ   Вверх
p0s0l
Дата 6.3.2005, 15:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 58
Всего: 112



Не кэш, а хэш smile

Погляди эту темку, там пример использования MD5:
http://forum.vingrad.ru/index.php?showtopi...=0&#entry238724
тебе нужно будет вместо поля ввода имени юзера сделать ComboBox и оставить всего 1 кнопку...



--------------------
С уважением, г-н Посол.
PM   Вверх
The MASTER
Дата 6.3.2005, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Old master)
**


Профиль
Группа: Участник
Сообщений: 862
Регистрация: 19.7.2004
Где: Санкт-Петербург

Репутация: 2
Всего: 5



У меня вот так:

Выбор имени пользователя из Combobox1
Пароль из Edit1

Разве что-то не так? smile
PM MAIL WWW ICQ   Вверх
p0s0l
Дата 6.3.2005, 17:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Г-н Посол
****


Профиль
Группа: Экс. модератор
Сообщений: 3668
Регистрация: 13.7.2003
Где: 58°38' с.ш. 4 9°41' в.д.

Репутация: 58
Всего: 112



Должно быть так примерно:
Код
function CheckUserPass (const UserName, UserPass : string) : boolean;
var
 S : TStringList;
begin
 S := TStringList.Create;
 try
   S.LoadFromFile('passwords.txt');
 except end;
 Result := S.Values[UserName] = MD5(UserPass);
 S.SaveToFile('passwords.txt');
 S.Free;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 if not CheckUserPass(ComboBox.Text, Edit1.Text) then
   ShowMessage('Неправильный пароль')
 else
   ShowMessage('Всё правильно');
end;

ComboBox1 должен содержать имя юзеров
Edit1 - для ввода пароля
Button1 - для проверки введенного пароля

Хэши паролей хранятся в passwords.txt...
Чтобы всё это заработало, нужно вначале в passwords.txt прописать эти хэши...
Юзер и хэш пароля можно прописать этой функцией:
Код
procedure AddUserPass (const UserName, UserPass : string);
var
 S : TStringList;
begin
 S := TStringList.Create;
 try
   S.LoadFromFile('passwords.txt');
 except end;
 S.Values[UserName] := MD5(UserPass);
 S.SaveToFile('passwords.txt');
 S.Free;
end;




--------------------
С уважением, г-н Посол.
PM   Вверх
The MASTER
Дата 9.3.2005, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Old master)
**


Профиль
Группа: Участник
Сообщений: 862
Регистрация: 19.7.2004
Где: Санкт-Петербург

Репутация: 2
Всего: 5



Спасибо сегодня проверю! smile
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0553 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.