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

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

Разграничение доступа [D7, Win95/98, NT4, Win2k, WinXP]


KygECHuK ©   (2006-07-13 17:14:00) 

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


KygECHuK   (2006-07-14 15:15:00) [1]

Логика разграничения прав проста: S.I.U.D. для каждойт аблицы. Конечно я не отвергаю решение проблемы с помощь средст серверов баз данных, но при внедрении системы заказчик не даст прав создания новых пользователей. А возможен ли перхват событий изменений данных на уровне BDE ?


Kray   (2006-07-14 15:00:00) [2]


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

т.е. они вместе могут редактировать одни и те же таблицы и в то же время не изменять то что сделал другой?

вообще ответ на твой вопрос [1] можно дать только если приведешь полностью описание всей логики разграничения прав.


Kray   (2006-07-14 15:00:00) [3]


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

т.е. они вместе могут редактировать одни и те же таблицы и в то же время не изменять то что сделал другой?

вообще ответ на твой вопрос [1] можно дать только если приведешь полностью описание всей логики разграничения прав.


KygECHuK   (2006-07-14 09:52:00) [4]


> Да и к серверам вообще. Вы не подумали что пользователь
> может просмотреть базу и мимо вашей программы (MS Query
> например), если имеет соовтетствующие права

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


Юрий Зотов   (2006-07-13 20:20:00) [5]

> Desdechado ©   (13.07.06 19:27) [9]

И с поддержкой - никаких проблем.


Desdechado   (2006-07-13 19:27:00) [6]

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


Юрий Зотов   (2006-07-13 19:14:00) [7]

> Desdechado ©   (13.07.06 19:10) [7]

Гы... да все понятно, специально же смайлик поставил...
:о)

А прикольно получилось, да? Вроде, все логично, а в итоге фигня полная.


MikProg   (2006-07-13 19:10:00) [8]


>  к определенным северам баз данных,

Да и к серверам вообще. Вы не подумали что пользователь может просмотреть базу и мимо вашей программы (MS Query например), если имеет соовтетствующие права


Desdechado   (2006-07-13 19:10:00) [9]

Юрий Зотов ©   (13.07.06 18:56) [5]
Ай, зачем так?
Аспекты защиты непересекающиеся, а множества - запросто.
Аспект защиты - место раздачи прав.


Юрий Зотов   (2006-07-13 18:56:00) [10]

> Desdechado ©   (13.07.06 17:41) [1]

Поскольку "пересечение этих множеств прав дает итоговые права пользователя", а они "обычно непересекающиея", то итоговые права пользователя обычно никакие?

:о)


KygECHuK   (2006-07-13 18:00:00) [11]

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

P.S. Предлагаю продолжить завтра ,а то рабочий день подошел к концу.


Desdechado   (2006-07-13 17:55:00) [12]

Если функциональность отражает структуру БД, читать GRANT и REVOKE в справке по СУБД.
Если часть данных в таблице разрешена, часть нет, то механизмов много, но все разные и зависят от возможностей СУБД. Например, в Оракле есть row-level security.


KygECHuK   (2006-07-13 17:49:00) [13]

Функцинальность закрепленная за пользователем уже существует и используется. В вопросе подразумеватся уровнь запрета доступа к данным: на этапе вызова формы для редактирования данных или непосредственно при попытке изменения записей в таблице.


Desdechado   (2006-07-13 17:41:00) [14]

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


Наверх

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