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

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


person logesh    schedule 18.10.2012    source источник


Ответы (2)


жемчужина CanCan Райана Бейтса удовлетворит большинство ваших требований. Посмотрите эпизод RailsCast на CanCan для краткого введения: http://railscasts.com/episodes/192-authorization-with-cancan

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

person Prakash Murthy    schedule 18.10.2012
comment
Я видел это, и это показывает только назначение роли пользователю. Я назначил роль, но помимо роли я хочу, чтобы пользователь с той же ролью имел разные разрешения для одного и того же проекта. - person logesh; 18.10.2012

У меня нет опыта работы с Rails, но я предполагаю, что вы ищете разрешение уровня объекта, которое можно было бы использовать для управления операцией CRUD на отдельных объектах для каждого пользователя.

add_permission --> List of User
view_permission --> List of User
delete_permission --> List of User
update_permission --> List of User
add_excluded_user_permission --> List of User
view_excluded_user_permission --> List of User
delete_excluded_user_permission --> List of User
update_excluded_user_permission --> List of User

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

person Raunak Agarwal    schedule 18.10.2012