Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Схемы аутентификации пользователей приложения, схемы аутентификации 
:(
    Опции темы
soulhealer85
Дата 16.2.2009, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Народ, поделитесь пожалуйста, каким образом вы реализуете аутентификацию пользователей проги, работающей с БД? Храните пользователей и зашифрованные пароли в таблице типа "users", подключаетесь по неким guest, и ... что потом? а может как-то иначе надо делать? В общем буду очень благодарен за советы
PM MAIL   Вверх
Akella
Дата 16.2.2009, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


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

Репутация: 29
Всего: 329



Как ты не можешь догадываться, что от СУБД зависит подход такой?

Добавлено через 1 минуту и 6 секунд
А разве при создании темы не для тебя такие слова написаны?
Цитата

Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)



Добавлено через 7 минут и 3 секунды
http://forum.vingrad.ru/index.php?showtopi...t&p=1029551
PM MAIL   Вверх
soulhealer85
Дата 16.2.2009, 22:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Для меня важны 2 сочетания:
1) BDE+FireBird
2) Ado+Oracle
P.S. Уважаемый Akella, если вам надоело отвечать на посты (хотя непонятно тогда, почему вы здесь "модераторствуете"), просто попейте пивка, остыньте... у вас в каждом слове какая-то озлобленность... расслабьтесь
PM MAIL   Вверх
Kbl4AH
Дата 16.2.2009, 22:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 6
Всего: 15



Код

OracleQuery1.SQL.Text := 'SELECT login FROM logon WHERE login = :Login AND password = :Password';
OracleQuery1.Execute;
if OracleQuery1.Eof then
  Application.MessageBox('Неверные имя пользователя или пароль', 'Ошибка!')
else
begin
  FMain.Show;
  FLogon.Free;
end;

?
PM MAIL ICQ   Вверх
Akella
Дата 17.2.2009, 09:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


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

Репутация: 29
Всего: 329



Цитата(soulhealer85 @  16.2.2009,  22:08 Найти цитируемый пост)
1) BDE+FireBird

Советую не использовать такую связку. Лучше взять компоненты прямого доступа:
AnyDAC: версия 1 бесплатная
FibPlus: платные, но это самые лучшие компоненты
IBX: встроены в дельфи


Цитата(soulhealer85 @  16.2.2009,  22:08 Найти цитируемый пост)
P.S. Уважаемый Akella, если вам надоело отвечать на посты (хотя непонятно тогда, почему вы здесь "модераторствуете"), просто попейте пивка, остыньте... у вас в каждом слове какая-то озлобленность... расслабьтесь 

с вами тут расслабишься smile 
Знаешь анекдот: "....Вывод: не расслабляйся, а то....." smile 


Цитата(soulhealer85 @  16.2.2009,  22:08 Найти цитируемый пост)
Для меня важны 2 сочетания:
1) BDE+FireBird
2) Ado+Oracle

Трудно это было написать? Или написать, что тебя интересуют все СУБД.

Добавлено через 42 секунды
soulhealer85, ты читал, что там по ссылке в моем первом сообщении?

Добавлено через 7 минут и 13 секунд
Если нет, то опишу кратко для Firebird. Физически все работают под одним логином (главного админа базы), а так в базе есть таблица пользователей, групп и прав. Почему так сделано? Ну причин тому несколько. Пароль ограничен 8-ю символами. Нет возможности указать логин русскими символами. При переносе базы данных на другой компьютер также требуется таскать и security2.fdb (файл с пользователями firebird). Есть возможность в программе назначать права не только на объекты базы, а и на объекты самой программы. Это может и не правильно, но так уж повелось. Были мысли переехать на схему с системными пользователями. Но времени не было. В firebird 3 пользователи firebird`а уже будут жить не в security2.fdb, а самой базе данных.
Ответ нормальный? Если что, спрашивай. smile 
PM MAIL   Вверх
Vas
Дата 17.2.2009, 13:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 23
Всего: 28



ИМХО самый лучшый выход авторизация в самой БД с использованием прав на объекты БД, этим вы как минимум становитесь застрахованными от продвинутых пользователей которые могут пролезть в БД не из вашей проги и получить практически доступ админа.  Не зря разработчики БД немало внимания уделяют безопасности, а вы при всех схемах с одним пользователем это просто игнорируете. 


--------------------
И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин)
PM MAIL   Вверх
soulhealer85
Дата 17.2.2009, 14:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата

с вами тут расслабишься


 smile  ... А ты нормальный парень, извини что тоже был немного резок  smile 

Цитата

soulhealer85, ты читал, что там по ссылке в моем первом сообщении?

Читал - толковый пост, много нового узнал, спасибо

Akella, непонятен только вот такой момент (скорее не непонятен, а интересно как люди делают) - программа подключается под guest-ом, допустим юзер с введенным паролем/логином найден в какой-то собственной таблице "users"... а после этого переподключение ты не делаешь под некоторым пользователем, отличным от guest, у которого права не только на таблицу "users"? или у тебя guest имеет права и на другие обьекты?





PM MAIL   Вверх
Akella
Дата 17.2.2009, 15:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


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

Репутация: 29
Всего: 329



Цитата(Vas @  17.2.2009,  13:16 Найти цитируемый пост)
а вы при всех схемах с одним пользователем это просто игнорируете. 

да толку от этого... хоть какой пароль ты не поставь на базу, хоть каких пользователей не заведи.... можно файл базы спионерить и вся безопасность летит.....
"Обезопасивать" в первую очередь нужно сам сервер и файл базы данных.
PM MAIL   Вверх
Frees
Дата 17.2.2009, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Akella @  17.2.2009,  17:19 Найти цитируемый пост)
"Обезопасивать" в первую очередь нужно сам сервер и файл базы данных.

и "обезапасивать" сами данные - шифровать например


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Akella
Дата 17.2.2009, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


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

Репутация: 29
Всего: 329



Родного шифрования в firebird`е не предусмотрено пока что. А шифровать "на лету" не очень удобно. Есть у меня одна такая программка, которая хранит в базе шифрованную инфу. Сортировка, фильтрация идут лесом в этом случае. А подключать внешние UDF нет желания, чтобы не морочить голову себе и админам.
PM MAIL   Вверх
Frees
Дата 17.2.2009, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Akella @  17.2.2009,  17:32 Найти цитируемый пост)
Родного шифрования в firebird`е не предусмотрено пока что. А шифровать "на лету" не очень удобно. Есть у меня одна такая программка, которая хранит в базе шифрованную инфу. Сортировка, фильтрация идут лесом в этом случае. А подключать внешние UDF нет желания, чтобы не морочить голову себе и админам.

ну это на самом деле решаемые проблемы, не тривиально но решаемые

по поводу сортировки и поиска его придется делать скорее всего локально


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Akella
Дата 17.2.2009, 15:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


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

Репутация: 29
Всего: 329



Вот и я о том же. Например, DBGridEh из EhLib умеет локально сортировать. Только это получается раз 20 дольше. Про cxGrid ни чего не могу сказать, не знаю, не пробовал.
PM MAIL   Вверх
Frees
Дата 17.2.2009, 15:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Akella @  17.2.2009,  17:47 Найти цитируемый пост)
Про cxGrid ни чего не могу сказать, не знаю, не пробовал.

научить то даже и DBGrid можно локально сортировать.
тут главно не переусердствовать.
что бы Цена разработки не была дороже защищаемых данных

по сабжу 
мне больше нравится табличка с пользователями. и "Обезапасенный" файл базы данных

зы
Обойти можно любую защиту... !!!
нужно что бы стоймость взлома >= стоймости данных






--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Vas
Дата 17.2.2009, 15:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 23
Всего: 28



Цитата(Akella @  17.2.2009,  15:19 Найти цитируемый пост)
можно файл базы спионерить и вся безопасность летит.....

Смотря какая БД. 
Цитата(Akella @  17.2.2009,  15:19 Найти цитируемый пост)
"Обезопасивать" в первую очередь нужно сам сервер и файл базы данных.

Естественно, обычно к серверам доступ ограничен, по другому о безопасности нечего и говорить и городить тогда права на объекты, шифрование и все прочее не стоит, возьмут  и унесут или файлы или весь сервак  smile 

Это сообщение отредактировал(а) Vas - 17.2.2009, 15:58


--------------------
И опыт, сын ошибок трудных, И гений, парадоксов друг, И случай, бог изобретатель. ... (А.С. Пушкин)
PM MAIL   Вверх
Frees
Дата 17.2.2009, 15:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2233
Регистрация: 2.12.2005
Где: Екатеринбург

Репутация: 23
Всего: 54



Цитата(Vas @  17.2.2009,  17:56 Найти цитируемый пост)
шифрование и все прочее не стоит, возьмут под руки и унесут   smile 

если данные зашифрованы толку не будет от того что унести смогли


--------------------
Кольцов Виктор Владимирович
PM MAIL ICQ   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

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

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


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


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

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

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


 




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


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

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