|
о привилегиях
|
|||
---|---|---|---|
#18+
Привет народ. Ситуация следующая. Имеется приложение на Делфи которое через доа стукает к ораклу. в базе заведено несколько пользователей с разными привилегиями по постоянному набору таблиц. например одному пользователю можно редактировать некоторое поле. а другому нельзя. но когда вытаскивается в приложение набор записей, то редактировать можно все, другое дело, что сохранить не все получится, если отредактировать поле не имея на то привилегии. не могу сообразить как сделать так, что бы в зависимости от предоставленных привилегий, т.е от того кто залаговался определенные DBEditы становились либо в ридонли труе либо ридонли фалсе Попробовал через функцию, которая возвращает набор привилегий для пользователя из словаря, но все равно затык. Если юзер вызывает не свою функцию, то ему на время работы функции предоставляются привилегии того, кому эта функция принадлежит. В рез-те один и тот же набор привилегий под любым юзером. Может у кого какая умная мысля есть? Или вообще можно как-то совсем по другому сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2001, 14:11 |
|
о привилегиях
|
|||
---|---|---|---|
#18+
Насколько мне казалось, отказ сохранить изменения некоторых полей записи из-за недостатка прав у пользователя не является некоректной работой клиентского приложения. Клиент сунулся, получил отказ и больше не лезет в запрещенные поля. Если это не подходит можно попробовать следующее: 1. Если вариантов наборов прав пользователей не много, можно организовать несколько окон для отображения и редактирования информации, используя разные dataset c нужными запросами. И предлагать пользователю нужное окно. 2. Создать отдельную таблицу в базе, в которой хранится информация о возможности (невозможности) изменения определенного поля. Загружать эту информацию для залогиненого пользователя и согласно нее выставлять поле ReadOnly у объектов TField. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.10.2001, 18:44 |
|
|
start [/forum/topic.php?fid=52&msg=32014823&tid=1993521]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 14ms |
total: | 130ms |
0 / 0 |