Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос по безопасности.. [D5, IB5.x]


Alek_1 ©   (2006-09-20 14:30:00) 

У меня есть сервер БД FireBird
есть сам файл базы.

вопрос!
можно ли как-то зашифровать базу чтобы при переносе ее на другой сервер (компьютер) ее нельзя было открыть пользователем SYSDBA?


Vemer   (2006-09-22 09:55:00) [1]

Тупо зашифровал текстовые поля базы на клиенте. Работает замечателно.
Образец выкладывался в кладовку года 2 назад.


PEAKTOP   (2006-09-20 18:06:00) [2]

Исходя из тербований, наверное пишем CRM или DirectMarketing ПО. В свое время я поступил следующим образом.
1) Использовал FireBird Embedded. очень удобно, заменяем fbclient.dll (gds32.dll) в каталоге exe-шника проекта на dll от Embedded, и твоя программа сама становиться SQL-сервером. Правда, о мнопользовательской работе с базой можно забыть. Также, нельзя будет запускать программу более, чем в одном экземпляре, т.к. файл БД будет заблокирован первой копией. И вообще, как работать с Embedded почитай на http://www.ibase.ru
2) Пользователя фактически интересуют данные о контактах и др. справочной информации, т.е поля типа CHAR, VARCHAR. Я содержимое этих полей поля преобразовывал по нек. алгоритму, который приводил к тому, что в базе хранились "зюзики" и разобрать что либо - невозможно. А на обработчик события OnGetText TIBDataSet-а вешал алгоритм обратного преобразования, и получалось, что данные отображаются нормально. Также пришлось заморочиться с поиском, чтобы преобразовать в клиентской программе искомую в базе строку в "зюзики", а дальше искать уже средствами SQL сервера через SELECT.

Конечно, у этого способа много недостатков, но зато "дешево" и "сердито".
"Ломать" твой алгоритм шифорвания никто не будет, т.к. "поломать" стоит от 100$, а я еще не видел подобное ПО, стоящее в розницу дороже 30-40$ за штуку. Т.е. пользователю дешевле просто купить. Если ты захочешь какие либо отчеты FastReporte, то тоже придется заморочиться с движком отчетов на прорисовке, я лично перпочитаю старый добрый QReport, там это все гораздо проще делается, не надо лазить в исходники.


Виталий Панасенко   (2006-09-20 15:24:00) [3]

Придумай какую-то UDF. конечно, если продвинутый пользователь, ознакомленный с возможностями IB, то "поломается" такая защита. но от простого копирования "не смышленными юзерами" - спасет(может спасти)


Alek_1   (2006-09-20 15:07:00) [4]

потому что это клиентская база, которая будет храниться у клиента, я просто нехочу чтобы человечек ее скопировал и использовал на другой машине. Ролей в ней нет покачто.

Вопрос как защититься от копирования??? и использования базы на другой машине на которой утсановлек сервер БД :)


Sergey13   (2006-09-20 14:52:00) [5]

> [2] Alek_1   (20.09.06 14:43)
> исключить возможность доступа к ФАЙЛУ БД извне. - неполучится

Почему?


zdm   (2006-09-20 14:45:00) [6]

как-то вопрос не корректно по моему поставлен. Типа есть база с ролями, я хочу её перенести с теми-же настройками на другой комп, но чтобы и открыть её было нельзя,,, бред какой-то.. А просто хочешь шифрануть базу, как файл, то вряд-ли у тебя что-то получится, хотя мысль интересная(двойной доступ, как к файлу так и к БД), можно что-то придумат, типа, как zip архиватор работает, зашифруй сам файл, а потом, да блин но это-же каждый раз базу разархивировать,,,, не лажа, забей, просто не пуска ни кого к серверу!!!!


Alek_1   (2006-09-20 14:43:00) [7]

исключить возможность доступа к ФАЙЛУ БД извне. - неполучится :(((

попробую поиграться с ролью, может кто что еще предложит? :)


Sergey13   (2006-09-20 14:35:00) [8]

Вроде как томожно поизгаляться с РОЛЬЮsysdba. Но проще исключить возможность доступа к ФАЙЛУБД извне.


Наверх

Титульная страница Поиск, карта сайта Написать письмо