Rolify и actions_as_tenant с системой единого входа (с некоторыми устройствами Devise & Pundit на стороне) - это можно сделать?

Я собираюсь попытаться сделать это в своем приложении на Rails, но я подумал, что увижу, знает ли кто-нибудь о том, что меня остановит на треках.

Основная предпосылка заключается в том, что у меня есть следующие модели:

  • Компания - арендаторы в act_as_tenant
  • Пользователь - уникальные адреса электронной почты, общие для всех арендаторов, привязанных к Devise для аутентификации, т. Е. Единый вход
  • Роль - через Rolify и затем использовать Pundit для авторизации
  • Model1, Model2 и т. Д., При этом каждая запись принадлежит одной компании

Из того, что я прочитал до тех пор, пока я все настрою правильно, у меня будут раздельные данные об арендаторах, и тогда пользователи смогут переключаться между арендаторами, и их разрешения будут меняться соответственно.

Итак, мой конкретный вопрос:

Будет ли действовать act_as_tenant с Rolify?

Так, например, если пользователь-администратор в Tenant1 добавляет роль новому пользователю, будет ли эта роль автоматически применяться только к ресурсам, принадлежащим этому арендатору?

1 ответ

Решение

В итоге я получил жемчужину квартиры и мои модели User и Company в публичной схеме. У меня есть модель ролей, которая связывает пользователя с компанией и содержит роли, которые пользователь имеет для данной компании. Devise аутентифицирует пользователя, а Pundit использует роль для авторизации.

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