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

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

Разграничение прав пользователей [D7, MySQL]


Лиса ©   (2005-06-16 13:02:00) 

Всем привет! Возникла такая проблема: нужно организовать работу с приложением (клиентское приложение для работы с MySQL) нескольких пользователей с разными правами доступа к информации. Так же для каждого пользователя должен быть соответствующий интерфейс. Если кто-то с этим сталкивался или у кого-то есть какие-то соображения по этому поводу, большая просьба поделиться опытом.


evvcom   (2005-06-16 14:44:00) [1]


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

Само меню формировать динамически, а не включать/отключать, тогда и в модуле администратора, можно будет создавать меню перетаскивать куда удобно и хоть в разные подменю одни и те же действия разносить (если вдруг так удобно будет)

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

Неверный подход. Если есть сервер, контролирующий права, пусть он их и контролирует. Иначе появится у вас какой-нить хакер и будет через иные средства доступа на сервер лазить, а вы потом голову ломать, кто ж там так данные подправил?


-=XP=-   (2005-06-16 13:56:00) [2]

По идентификатору роли гораздо удобнее делать интерфейс, нежели по конкретному узеру.

Да и администратор потом спасибо скажет.
50 пользователей и 5 групп пользователей - разные вещи.


Лиса   (2005-06-16 13:56:00) [3]


> Sergey13


А вообще-то да, так можно будет и много пользователей наплодить и работать с ними гораздо легче будет, если их на группы разбить.

Всем спасибо!


Sergey13   (2005-06-16 13:50:00) [4]

2[8] Лиса   (16.06.05 13:46)
Какая тут ирония? Никакой иронии. Роль - это привилегии группы пользователей. По идентификатору роли гораздо удобнее делать интерфейс, нежели по конкретному узеру. Я думаю и  -=XP=- в [4] на это намекал.


-=XP=-   (2005-06-16 13:47:00) [5]

То есть просто перебрать все формы проекта и выключить то, на что нет прав у пользователя?

То есть, при создании формы (то ли в конструкторе, то ли в OnCreate)запросить из БД права на пользование элементами интерфейса - и поотключать (Enabed := false) запрещенные элементы управления. Так будет правильнее, с точки зрения ООП.


Лиса   (2005-06-16 13:46:00) [6]


> Sergey13

В данной версии сервера похоже нет, есть привилегии, которые, собственно и определяют что-то типа роли. Или это ирония по поводу "придумать"? Напрасно, напрасно...)))


Sergey13   (2005-06-16 13:30:00) [7]

2[5] Лиса  
А роли в мускуле есть? Если нет, то их стОило бы придумать самостоятельно.


Лиса   (2005-06-16 13:19:00) [8]

-> -=XP=-

Можно и так сделать, конечно... То есть просто перебрать все формы проекта и выключить то, на что нет прав у пользователя?


Лиса   (2005-06-16 13:15:00) [9]

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


-=XP=-   (2005-06-16 13:13:00) [10]

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

А если попытать счастья, и сделать это один раз - при логине пользователя?


Лиса   (2005-06-16 13:12:00) [11]

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


Lord Zmiy   (2005-06-16 13:11:00) [12]

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


Sergey13   (2005-06-16 13:07:00) [13]

А какого рода соображения тебе нужны? Вопрос слишком уж общий, ИМХО.


Наверх

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