maaboo
Новичок
Списки контроля доступа и игнор-листы
Доброго...
Имеется некое приложение (точнее пишется), где будет организованы ACL. Я ранее задавал вопрос, но почему-то никто из уважаемых участников форума не дал на него ответа. Вопрос про пример организации контроля доступа. Но как оказалось при анализе такой контроль больно уж смахивает на юниксовый и не позволяет гибко рулить (например, пользователь не может входить одновременно в несколько групп, или скажем наследовать права). Я посмотрел движок WackoWiki, и как там организовано подобное, так вот там имеется табличка wakka_acls, со следующими столбцами:
page_tag | varchar(250) | PRI
supertag | varchar(250) | MUL
privilege varchar(20) | PRI
list | text
У меня возникло два вопроса:
1. Почему привилегии написаны как varchar(20)? И как это может работать?
2. Насколько я понял группы хранятся в text. Насколько это оправдано, и можно ли сделать по-другому?
Кроме того, как осуществить хранение в базе настроек вроде
user value
against
user value?
(например user1 игнорит user2, user 35 зафрендил user998 и так далее).
Это какая-то самоперекрещивающаяся таблица получается. Как это организовать?
Пишу сюда, ибо это по-моему лучший форум, потому как на майэскюэль.ру не борда, а фигня какая-то.
Кто-нибудь реализовывал контроли доступа и списки, подобные игнорным?
Доброго...
Имеется некое приложение (точнее пишется), где будет организованы ACL. Я ранее задавал вопрос, но почему-то никто из уважаемых участников форума не дал на него ответа. Вопрос про пример организации контроля доступа. Но как оказалось при анализе такой контроль больно уж смахивает на юниксовый и не позволяет гибко рулить (например, пользователь не может входить одновременно в несколько групп, или скажем наследовать права). Я посмотрел движок WackoWiki, и как там организовано подобное, так вот там имеется табличка wakka_acls, со следующими столбцами:
page_tag | varchar(250) | PRI
supertag | varchar(250) | MUL
privilege varchar(20) | PRI
list | text
У меня возникло два вопроса:
1. Почему привилегии написаны как varchar(20)? И как это может работать?
2. Насколько я понял группы хранятся в text. Насколько это оправдано, и можно ли сделать по-другому?
Кроме того, как осуществить хранение в базе настроек вроде
user value
against
user value?
(например user1 игнорит user2, user 35 зафрендил user998 и так далее).
Это какая-то самоперекрещивающаяся таблица получается. Как это организовать?
Пишу сюда, ибо это по-моему лучший форум, потому как на майэскюэль.ру не борда, а фигня какая-то.
Кто-нибудь реализовывал контроли доступа и списки, подобные игнорным?