Динамические разрешения на форуме в Drupal

Мои пользователи получают доступ к Drupal через SSO, и каждый раз, когда сервер авторизует их, он возвращает набор разрешений (групп / ролей), в соответствии с которыми мне нужно динамически устанавливать разрешения для пользователей на форуме.

Например, если пользователь входит в систему и SSO сообщает, что он записался на курс, мне нужно дать ему определенные разрешения для форума этого курса.

Очевидно, мне нужен специальный модуль для этого, но его немного сложно начать.

Я думаю об использовании API модуля ACL, но я могу найти любую документацию или учебное пособие онлайн. Есть ли?

Есть ли лучший способ обойти это?

Буду признателен за любую помощь:)


(примечание: я знаю, что есть модули с графическим интерфейсом, которые имеют аналогичную функциональность, но мне нужно сделать это программно)

3 ответа

Решение

Проверьте доступ к форуму. Это может ограничивать пользователей в зависимости от их ролей.

Вы могли бы иметь свои роли что-то вроде "Студент CSC221". Если у пользователя есть эта роль, он сможет получить доступ к форуму CSC221.

Мы просто поместили что-то вроде этого на место - мы использовали модуль "Правила" (с триггером "Пользователь вошел в систему"), проверили группы LDAP, в которые зарегистрирован пользователь, и соответственно присвоили роль.

Создайте функцию hook_user (см. Http://api.drupal.org/api/function/hook_user) в своем модуле.

Затем с помощью http://drupal.org/project/permissions_api установите соответствующие разрешения для пользователя.

Другие вопросы по тегам