Схема таблиц пользователей/групп пользователей как в Windows
От: Аноним  
Дата: 27.01.10 13:55
Оценка:
Hello world!

Есть пользователи.
Есть группы пользователей, в которые входят пользователи.
Есть файл которому можно назначить как несколько групп пользователей, так и несколько пользователей одновременно — по типу задания прав на файл в винде.

Подскажите плиз как такое организовать в виде таблиц.

з.ы. БД — любая sql-подобная
Re: Схема таблиц пользователей/групп пользователей как в Win
От: biochemist СССР https://www.anekdot.ru/i/caricatures/normal/20/7/27/1595846503.jpg
Дата: 28.01.10 08:13
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Hello world!


А>Есть пользователи.

А>Есть группы пользователей, в которые входят пользователи.
А>Есть файл которому можно назначить как несколько групп пользователей, так и несколько пользователей одновременно — по типу задания прав на файл в винде.

А>Подскажите плиз как такое организовать в виде таблиц.

Не понял, что значит "в виде таблиц".
А>з.ы. БД — любая sql-подобная
RDBMS Oracle — ROLE.
«Национализм во мне столь естественный, что никогда никаким интернационалистам его из меня не вытравить»
Менделеев Д. И.
Re: Схема таблиц пользователей/групп пользователей как в Win
От: wildwind Россия  
Дата: 28.01.10 08:46
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Подскажите плиз как такое организовать в виде таблиц.


В смысле помочь родить схему данных?

Основные сущности ты назвал: пользователь, роль, объект доступа. Не хватает собственно прав. Или право одно-единственное?
Re[2]: Схема таблиц пользователей/групп пользователей как в
От: Аноним  
Дата: 28.01.10 11:33
Оценка:
Здравствуйте, wildwind, Вы писали:

W>В смысле помочь родить схему данных?

да да

W>Основные сущности ты назвал: пользователь, роль, объект доступа. Не хватает собственно прав. Или право одно-единственное?

да нет права не нужны. просто нужна схема которой можно описать привязку юзеров и групп к файлу. все
Re[2]: Схема таблиц пользователей/групп пользователей как в
От: Аноним  
Дата: 28.01.10 11:39
Оценка:
Здравствуйте, biochemist, Вы писали:

B>Не понял, что значит "в виде таблиц".

структуру базы данных. таблицы и отношения между ними.
Re[3]: Схема таблиц пользователей/групп пользователей как в
От: biochemist СССР https://www.anekdot.ru/i/caricatures/normal/20/7/27/1595846503.jpg
Дата: 28.01.10 12:54
Оценка:
Здравствуйте, Аноним, Вы писали:

А>структуру базы данных. таблицы и отношения между ними.

Это называется ER- диаграмма. Для её построения используются специальные программы, например ER-Win. Юзеры группируются через роли (права).
«Национализм во мне столь естественный, что никогда никаким интернационалистам его из меня не вытравить»
Менделеев Д. И.
Re[4]: Схема таблиц пользователей/групп пользователей как в
От: Аноним  
Дата: 29.01.10 14:27
Оценка:
Здравствуйте, biochemist, Вы писали:

B>Это называется ER- диаграмма. Для её построения используются специальные программы, например ER-Win. Юзеры группируются через роли (права).


а по теме помочь не хотите?
Re[5]: Схема таблиц пользователей/групп пользователей как в
От: paucity  
Дата: 29.01.10 20:41
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, biochemist, Вы писали:


B>>Это называется ER- диаграмма. Для её построения используются специальные программы, например ER-Win. Юзеры группируются через роли (права).

Ну уж так сразу и Ервин покупать, чтоб зачет сдать?

А>а по теме помочь не хотите?

Держи, студент!

юзеры и группы в одной табличке с разным типом.
если что не так извиняйте, ик-к, тяпница все таки .
Re[6]: Схема таблиц пользователей/групп пользователей как в
От: Аноним  
Дата: 01.02.10 15:18
Оценка:
Здравствуйте, paucity, Вы писали:

P>Держи, студент!

спасибо

P>юзеры и группы в одной табличке с разным типом.

пару вопросов:
как я понял, согласно схеме в группу могут входить другие группы и т.д.? средствами БД как-нибудь можно ограничить рекурсию когда в группу А входит группа Б в которую входит снова группа А и подобные вещи?
Re[6]: Схема таблиц пользователей/групп пользователей как в
От: Other Sam Россия  
Дата: 02.02.10 08:00
Оценка:
> Держи, студент!
>
> юзеры и группы в одной табличке с разным типом.
> если что не так извиняйте, ик-к, тяпница все таки .

В вашей схеме нехватает запретительных прав.
Пример:
Файл: f.txt
Права:
Allow Admins READ
Allow Admins WRITE
Allow BackOffice READ
Deny PartTimeWorkers READ
Deny PartTimeWorkers WRITE
Рассшифровка. Файл могут читать сотрудники Бэкофиса и админы. Админы
также могут править файл. Но никто из временных сотрудников не может ни
читать ни править этот файл (даже если они админы или сотрудники бэкофиса).

В вашей схеме такой подход можно эмулировать. Для этого нужно заводить
по две записи RIGHT на каждое право. Например Allow_READ и Deny_READ,
вместо одного READ. А при проверке полномочий проверять сначала Deny_* —
и если найдется — отказывать, а затем Allow_* и если найдется —
разрешать. Если не найдется ни то ни другое, то отказывать.
Posted via RSDN NNTP Server 2.1 beta
Re[7]: Схема таблиц пользователей/групп пользователей как в
От: paucity  
Дата: 02.02.10 08:57
Оценка:
Здравствуйте, Other Sam, Вы писали:

OS>В вашей схеме нехватает запретительных прав.

OS>Пример:
OS>Файл: f.txt
OS>Права:
OS> Allow BackOffice READ
OS>.....
OS>В вашей схеме такой подход можно эмулировать. Для этого нужно заводить
OS>по две записи RIGHT на каждое право. Например Allow_READ и Deny_READ,
OS>вместо одного READ. А при проверке полномочий проверять сначала Deny_* —
OS>и если найдется — отказывать, а затем Allow_* и если найдется —
OS>разрешать. Если не найдется ни то ни другое, то отказывать.

а еще может быть: Deny Other_Sam READ
И хотя Other_Sam входит в группу BackOffice, читать ему должно быть запрещенно, ибо запретительные "права" обладают большим приоритетом.
и т.п.
Re[7]: Схема таблиц пользователей/групп пользователей как в
От: Аноним  
Дата: 02.02.10 09:41
Оценка:
Здравствуйте, Other Sam, Вы писали:

OS>В вашей схеме нехватает запретительных прав.


спасибо за помощь, но в моей задаче нет прав, т.е. их нет вообще.
я так понимаю в этом случае нужно выкинуть табличку RIGHT и столбец R_ID в RIGHT_ON_FILE?

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