![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 6 Всего: 121 |
Насколько я понял, имелись ввиду только сканеры памяти. В таком случае, всё будет зависеть от уровня того, кто будет юзать "другую софтину". -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| Aprol |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 15.6.2007 Репутация: нет Всего: нет |
На счет объекта Пользователь, его что артмоней не возьмет?
2Alexeis , "Лучше чтобы это все в самой базе было уже зашифровано определенным образом, а затем нетривиальным образом сверялось. Т.е. не так чтобы if (UserNum = 007) then SetAllPrivileges(); " каждый раз делать запрос к базе на проверку привелегий? |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Ну можно сделать скажем набор чисел определяющие привелегии пользователя (например массив) и соответственно от этих чисел будет зависеть порядок некоторых операций, что в конечном итоге позволит или нет произвести операцию для которой нужны особые права. Можно смешать эти числа с другими данными о пользователе, а имя пользователя (его номер) использовать чисто для вывода на экран. Т.е. сверять пользователя не по имени, а по другим замаскированным под что-то полезное данным. Можно делать это даже в разное время. Типа сначала получить имя затем другие параметры. Желательно проверки на права осуществлять не в момент, когда нужно произвести операцию и не в момент, когда пользователь логинится , а некоторым образом между этими двумя событиями, таким образом при отладке нельзя будет определить момент, когда программа запретила что-то и исправить условный jne на безусловный jmp.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
В нём просто можно реализовать геттеры и сеттеры для прозрачного преобразования.
Также объект можно создать динамически, по принципу, который я описал выше. Да. Артмани его не возьмёт, если проделать вышеуказанные мной операции. |
|||
|
||||
| Aprol |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 15.6.2007 Репутация: нет Всего: нет |
ТО есть нужно будет в базе вводить еще одно поле? Ну оно у меня есть где обозначается тип пользователя. |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Aprol, ну чтобы давать конкретные советы нужно уточнить, что и от кого нужно защитить? Т.е. если нужно разграничить права пользователей на доступ к информации, то это лучше делать на стороне сервера. Если нужно защитить данные на локальной машине от того что кто-то может запустить чужую машину и достать из нее информацию, то защита должна быть в программе.
Имя и тип пользователя это хорошо, когда эту информацию нельзя подменить. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Aprol |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 15.6.2007 Репутация: нет Всего: нет |
Alexeis, конечно нужно и то и то.
Я сделал вывод: при каждой операции требующей определенные права, делается запрос на сервер и проверяется тип пользователя по его логину и id. Перед запросом программа-клиент проверяет верность этих данных, т.е. сверяет логин при авторизации с текущим. правильно думаю?))) |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 109 Всего: 459 |
Если информацию нужно получить от сервера, то лучше во первых зашифровать, так чтобы расшифровать можно было только зная пароль, кроме этого при в запрос к данным должны входить имя пользователя и пароль, точнее не сами имя и пароль, а имя хеш сумма пароля, так как это не позволит злоумышленнику перехватывающему пакеты узнать из них пароль, а сервер может проверить пароль вычислив у себя хеш сумму и сравнить с присланной хеш суммой. Данные идущие с сервера нужно зашифровать так, чтобы ключ расшифровки можно было вычислить только имея пароль + от сессии к сессии ключ должен меняться, чтобы нельзя было расшифровать статистически.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |