Сново о правах доступа

Аватар пользователя XeNum XeNum 28 февраля 2005 в 21:52

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

Смотрел groups и taxonomy_access. В первом мне показалось, что надо править почти каждый файл. А второй просто выдавал ошибку и ни в какую не шел. Подскажите пожалуйста как решить проблему.

Комментарии

Аватар пользователя axel axel 1 марта 2005 в 21:37

groups - старый модуль под 4.4 и требовал много патчей (ещё под 4.4 был term_access). В 4.5 появилось API разграничения прав а доступ к нодами и стали возможными модули типа taxonomy_access, где не требуется патчить стандартные модули. Модуль работает, если ставить версию CVS, она работает с 4.5 и дебильные ошибки вроде пропущенных {} вокруг таблиц в ней выловлены. Почему автор не обновляет релиз для 4.5 - для меня загадка. Патч требуется только к модулю taxonomy, но тоже не обязательно - если его не применять термины будут видны всем, но доступ к нодам в них всё равно будет в зависимости от выставленных на термины прав. У меня были только проблемы с совместной работой i18n и этого модуля - патч к таксономии после патча от i18n не ставится.

--
Axel,
www.axel.drupal.ru

Аватар пользователя arsart arsart 2 марта 2005 в 1:48

чтобы разрешить пользователю писать без одобрения модератором мне надо разрешить ему полностью управлять нодами
Смотря что писать.
Если story.module, то там есть права "edit own stories" - выставив их заодно и убрав у авторов "administer nodes" получится очень даже ничего, только авторы будут лишены управления св-вами комметариев и настройкой отображения ноды(выдвинуть на загл. и т.п.). Но если грамотно настроить, то жить можно.

Если в публикационном модуле нету таких отдельных прав - сделать.

Например я так делал для weblink модуля, пришлось хакнуть его добавив внутрь новое право "edit own weblinks" по аналогии со story. Но как раз проблема с отстутствием прав автора на выполнение функции node_status и comment_status плохо повлияли на дополнительную возможность этого модуля - blogmarks. Но это частный случай.

Аватар пользователя XeNum XeNum 2 марта 2005 в 23:28

Видимо я скачал кривой taxonomy_access... Скачал другу версию, сразу заработало. Организовал деление прав так. Для обычных пользователей сделал возможность добавлять страницы, которые поступали на модерацию. Для авторов сайта позволил создавать статьи, которые бы сразу публиковались и анонсировались. С помощью taxonomy_access установил кому что можно добавлять и редактировать. Вроде все заработало.