![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Еще один вопрос о пользователях.
cat_si © (2003-02-14 16:37:00)Такой вопрос: необходимо реализовать систему авторизации пользователей, с дальнейшим разграничением прав на редактирование, просмотр и т.д. Причем каждому пользователю соответствуют настройки, которые в принципе определяют видимость просмотра данных, и какие-то ограничения на используемые справочники (то есть не все справочники вываливаются, а только те, которые нужны). Вот есть два пути: использовать систему SQL Server (то есть на логинах) или написать ее самим. Если кто-нибудь сталкивался с этим - расскажите, пожалуйста про проблемы в этих случаях.
Спасибо.
cat_si (2003-02-15 12:23:00) [1]Проблема еще и в том, что сеть гетерогенная и не имеет строгой доменной структуры. В частности, ЛВС конечных предприятий не в домене, а в обычной сетке.
MOA (2003-02-14 17:36:00) [2]Если не предполагается перенос на другие платформы, советую использовать механизм ролей + NT аутентификацию. ИМХО, самый малый геморрой.
Удачи!
Door (2003-02-14 17:34:00) [3]Рассказываю Историю!
Вход в программу надо было сделать через запрос пароля у пользователя (Дело было в D5,Paradox).Хранить пароли в табле - менталитет не позваляет!
Полез в BDE API: Example на AddMasterPassword есть, на то, как добавить подчиненные пароли - ни слова. У меня в базе 80 таблиц,вручную пароли раздавать хотя бы для одного пользователя - дело муторное. Работал 2 недели с перерывами - сделал unit. Потом наваял прогу для пакетного паролирования таблиц и Обозвал сей труд многозначительно - Security Wizard. При этом в "сетке" ни у кого ничего не узнавал и не спрашивал. Ну а теперь самое смешное: надувшись как пузырь от чувства собственной значимости и мастерства, пошел на форум по каким-то вопросам: ПЕРВОЕ ЧТО Я УВИДЕЛ БЫЛА КОРОТЕНЬКАЯ ВЕТОЧКА О ЧЕРНОМ ВХОДЕ В МОЙ ЛЮБИМЫЙ ПАРАДОКС! Эмоции были сильные...
Ну а теперь ближе к делу.
Касательно "Причем каждому пользователю соответствуют настройки, которые в принципе определяют видимость просмотра данных, и какие-то ограничения на используемые справочники (то есть не все справочники вываливаются, а только те, которые нужны)." SQL Server - даже не знаю что это такое.
Есть такая идея, достаточно общая:
Переписать TForm: добавить свойство LeadingDataSet:TDataSet
Если юзер не имеет прав на таблу LeadingDataSet - фиг ему форму!
Если имеет, то форма сама настраивается, например по правам на поля для текущего юзера. У парадоксовских таблиц видели свойство для каждого поля FormRights ? Ну и все в таком духе.