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

Главные вкладки

Аватар пользователя uroweb uroweb 22 июля 2008 в 20:54

В стандартном варианте Drupal (речь о Drupal 6) есть возможность ограничить по ролям доступ к узлам для редактирования и удаления, но такого типа разграничения доступа на просмотр нет - можно только позволить или запретить просмотр всех типов узлов.

Подскажите, пожалуйста,
(1) как можно ограничить доступ на просмотр к определенным типам узлов пользователям определенной роли (по аналогии "edit any node_type content" - "view any node_type content"),
(2) дать возможность смотреть только узлы этого типа, которые создал именно этот пользователь определенной роли (по аналогии "edit own node_type content" - "view own node_type content")?

Большое спасибо за помощь!

Комментарии

Аватар пользователя uroweb uroweb 24 июля 2008 в 8:48

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

Правда модуль находится на стадии разработки, пришлось слегка править текст, т.к. Drupal постоянно ругался. Но, главное, работает.

Удачи!

Аватар пользователя uroweb uroweb 24 июля 2008 в 21:49

Нашел еще 2 модуля для Drupal 6, которые призваны ограничить доступ пользователей к информации (нодам) по категории пользователей и индивидуально для каждого пользователя.

Taxonomy Access Control Lite - более поздняя версия. Разработчики утверждают, что не менее функциональная, при это модуль не делает своих таблиц в базе, а использует node_access и db_rewrite_sql.

Попрубую разобраться.

Аватар пользователя uroweb uroweb 28 ноября 2008 в 13:24

После тестирования работы Taxonomy Access Control Lite выяснилось, что при большом количестве нод (у меня более 60.000 нод) сайт стал страшно тормозить. Пришлось удалить этот модул и поставить другой - Content Access для Drupal 6. Задача решилась еще проще и при этом, пока, торможения сайта не отмечал.