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

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

Как защитить таблицу паролем [D7, XP]


Страницы:   1 2

Of land ©   (2010-01-31 14:01:00) 

Добрый день! Мастера, помогите пожалуйста решить такую задачу.
Есть БД, есть пользователи, которые имеют доступ к БД. В отдельном файле хранятся их логин и пароль. Они заходят в БД, вводя свои реквизиты. Каким образом можно реализовать защиту паролем таблицу конкретного пользователя?


Ega23   (2010-02-01 12:29:00) [1]

Пароль - AES-ключ для RSA-ключа, которым закрыты все значимые данные в БД.


KilkennyCat   (2010-02-01 12:24:00) [2]


> sniknik ©   (01.02.10 11:18) [26]

да, база небольшая была, какая-то таможенная фигня, не помню уже.
Помню супер-хитрый алгоритм ксора, типа следующая буква равна ксор с предыдущей, плюс постоянный коэффициент... ну просто офигительно, придумывали дольше, наверное, чем я разбирался.


Плохиш   (2010-02-01 12:04:00) [3]


> Anatoly Podgoretsky ©   (01.02.10 00:58) [11]
>
> Плохиш ©   (31.01.10 21:28) [8]
> А смысл, когда я зайду обычным DBD и все изменю и просмотрю.
>

Проблемы индейцев шерифа не волнуют ;-)


Anatoly Podgoretsky   (2010-02-01 12:01:00) [4]

И главное соглашаются на лечение.


Anatoly Podgoretsky   (2010-02-01 12:00:00) [5]

Посмотрю я на подобную шифровку для нетекстовых полей, кроме сообщения, что таблица разрушена ничего хорошего не получит.


sniknik   (2010-02-01 11:18:00) [6]

> Однако, такую базу видел.
ну, мало ли. может простой вариант с шифрованием одного поля (я вон пароли юзерские в базе шифровал, но по ним и работы никакой кроме считывания и "опознаний" на клиенте), или частичное нескольких полей которые не участвуют в работе.
или они вообще весь функционал на клиенте делают, а базу как базу совсем не используют, чисто как хранилище "шифровок".

и база была наверняка маленькая, т.к. когда счет на миллионы и сложные отчеты с объединениями на сервере, такое не пройдет.


KilkennyCat   (2010-02-01 09:43:00) [7]

нда... с английским я неудачно, надо было японский предложить... :)
Ну не знаю. Однако, такую базу видел.


sniknik   (2010-02-01 09:31:00) [8]

> Данные на английском будут для тебя шифрованными
да причем тут ты? главное чем они будут для движка базы, и есть ли по ним обработки/поиски и т.д. на уровне движка, а не вручную на клиенте.

даже если простой xor - берем запрос
select "что то" from "откуда то" order by name
в нормальном варианте и
select "что то" from "откуда то" order by xor(name, $66)

во первых, он эта xor функция есть в движке? во вторых если это делать на клиенте то в каком порядке придет рекордсет? и т.д.
и это НАИПРОСТЕЙШИЙ случай, и уже вопросы и нужда в "залечках", а что делать со сложными?
и кстати, что будет когда  Name xor $66 = #0 в середине строки, или другому не обрабатываемому символу подумал? или теперь уже все строки нужно бинарными делать? и т.д.

идея баз как таковых в общем убивается напрочь... вот про то АП и говорит, а ты ему, что шифрованное = английскому... ну да конечно.


KilkennyCat   (2010-02-01 09:14:00) [9]


> Anatoly Podgoretsky ©   (01.02.10 08:50) [22]

Почему? Вот предположим, ты не знаешь английского. Данные на английском будут для тебя шифрованными, работоспособность базы остается. Ну разумеется, придется делать перевод туда-сюда, без этого не обойтись.

На самом деле, это я не придумал, лет 10 назад ломал такую базу, там слегка усложненный ксор применили.


Anatoly Podgoretsky   (2010-02-01 08:50:00) [10]

Я уже не говорю об разрушение информации по нетекстовым полям. А чистая зашифровка и расшифровка перед началом работы полностью разрушает идею на корню.


Anatoly Podgoretsky   (2010-02-01 08:47:00) [11]

> KilkennyCat  (01.02.2010 01:41:14)  [14]

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


KilkennyCat   (2010-02-01 08:33:00) [12]

Готов, могу, но не буду :)


Германн   (2010-02-01 02:17:00) [13]


> KilkennyCat ©   (01.02.10 01:50) [17]
>
>
> > Германн ©   (01.02.10 01:44) [15]
>
> Да и с этим совместимо, он же не выдвинул требования

Т.е. ты готов бесплатно написать решение его задачи?


KilkennyCat   (2010-02-01 01:52:00) [14]


> sniknik ©   (01.02.10 01:48) [16]

как работать... а может, там одна табличка, два поля? какие тогда джойны, индексы и проч...
А вообще, как я уже сказал, от шифровалки зависит. Ксоринье не помешает индексам джойнам и пр.


KilkennyCat   (2010-02-01 01:50:00) [15]


> Германн ©   (01.02.10 01:44) [15]

Да и с этим совместимо, он же не выдвинул требования на соответсвие военным стандартном в условиях межплентной войны... 1С в 7-ке особо не парилось с паролями, однако ниче, массовый и успешный продукт. И их способ автору как раз.


sniknik   (2010-02-01 01:48:00) [16]

> если впихать уже зашифрованное
а как работать? связки, джойны, поиск, запросы, индексы? да еще и чтобы быстро работало...

какие то у тебя странные понятия о нормальной (раз предлагаешь) работе с базами.


Германн   (2010-02-01 01:44:00) [17]


> KilkennyCat ©   (01.02.10 01:41) [14]
>
> совместимо, если впихать уже зашифрованное.

Не совместимо с
> Of land   (31.01.10 20:35) [6]
>
> Поясните пожалуйста на простом примере, если не трудно.
> Я начинающий


KilkennyCat   (2010-02-01 01:41:00) [18]

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


Anatoly Podgoretsky   (2010-02-01 01:18:00) [19]

> Германн  (01.02.2010 01:10:12)  [12]

И я про тоже, Парадокс и защита - несовместимо.


Германн   (2010-02-01 01:10:00) [20]


> Anatoly Podgoretsky ©   (01.02.10 00:58) [11]

Умелому и DBD не нужен (поскольку не у всех на компе DBD есть). Зато у многих на компе есть MS Office.


Страницы:   1 2

Наверх

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