Разграничение прав пользователей на управление документами разных категорий

Аватар пользователя Elijah_ Elijah_ 21 декабря 2007 в 1:24

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

Мне нужно сделать так, чтобы определенные группы пользователей имели возможность создавать и редактировать документы, относящиеся только к некоторым элементам таксономии (у меня таксономия построена на структуре организации, и нужно сделать так, чтобы сотрудники данного отдела могли создавать и редактировать документы, относящиеся к термину своего отдела и некоторым другим терминам других категорий, но не могли бы создавать и редактировать документы, относящиеся к термину, закрепленному за другим отделом). При этом все пользователи должны видеть все документы всех терминов, т.е. скрывать нельзя, а нужно ограничить доступ на редактирование.

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

Я сам вижу пока только один выход:
a) создать столько ролей, сколько отделов в организации,
b) создать столько типов документов с одинаковым набором полей, сколько отделов,
c) создать столько категорий, сколько отделов,
в) рассортировать созданные типы материалов по категориям, т.е. одна категория - один тип материалов, другая - другой и т.д.

Тогда получится примерно следующее: категория "Отдел 1" имеет тип материалов "Отдел 1" и таким типом материалов может управлять роль "Отдел 1", и т.д.

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

Господа, мне очень хотелось бы получить подсказку. Спасибо.

Комментарии

Аватар пользователя Elijah_ Elijah_ 23 декабря 2007 в 1:50

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

Извините за такой глупый вопрос. Сам не догадался на drupal.org в раздел модулей по работе с таксономией залезть...

Аватар пользователя BorisVlasenko BorisVlasenko 14 сентября 2009 в 10:56

Вопрос не такой уж и глупый.
У меня - глупее, возможно.
Делаю то же самое: создаю роли, назначаю права, но ограничения не работают!

Допустим, есть роль "школа № 10", есть словарь "Учреждения", в котором - термин "школа № 10".

В настройках TAC выбираю роль "школа № 10", даю ей права:
школа № 10: A, A, A, создать, список
школа № 7: A,D,D

Как я понимаю, это должно дать возможность 10 школе создавать, изменять и удалять документы с тегом "школа № 10", а также, даст право только просматривать документы с тегом "школа № 7".
Однако, при создании страницы я могу под пользователем с ролью "школа № 10" создать документ с любым термином.

Где и что я мог упустить?
Права для зарегистрированного пользователя ставлю в A,D,D
Права для анонима A,D,D

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

Попробую удалить TAC, обновить права доступа и еще раз установить.

Аватар пользователя BorisVlasenko BorisVlasenko 14 сентября 2009 в 10:56

Вопрос не такой уж и глупый.
У меня - глупее, возможно.
Делаю то же самое: создаю роли, назначаю права, но ограничения не работают!

Допустим, есть роль "школа № 10", есть словарь "Учреждения", в котором - термин "школа № 10".

В настройках TAC выбираю роль "школа № 10", даю ей права:
школа № 10: A, A, A, создать, список
школа № 7: A,D,D

Как я понимаю, это должно дать возможность 10 школе создавать, изменять и удалять документы с тегом "школа № 10", а также, даст право только просматривать документы с тегом "школа № 7".
Однако, при создании страницы я могу под пользователем с ролью "школа № 10" создать документ с любым термином.

Где и что я мог упустить?
Права для зарегистрированного пользователя ставлю в A,D,D
Права для анонима A,D,D

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

Попробую удалить TAC, обновить права доступа и еще раз установить.