2012-03-29 4 views
2

При чтении руководства web2py, я наткнулся на это следующее:По умолчанию группа пользователей поведения создание в web2py

«После того, как новый пользователь зарегистрирован, новая группа создана, чтобы содержать пользователя. Роль нового пользователя условно «user_ [id]», где [id] - это идентификатор вновь созданного идентификатора. '

, что заставляет меня задаться вопросом, почему Web2py это делает. В частности, почему нам нужно создать так много, казалось бы, избыточных групп, где каждый может содержать только одного пользователя? Например, какова цель создания группы под названием 'user_2', созданной только для того, чтобы содержать пользователя с идентификатором '2'?

Если нет какого-либо конкретного обоснования, существует ли способ отключить это поведение по умолчанию для автоматического создания уникальных групп для отдельных пользователей, чтобы можно было создавать более значимые группы отдельно? Благодарю.

+0

См. Https://groups.google.com/d/msg/web2py/C5BHvXMyq7s/YZ6Gdx78mesJ для обсуждения – Yarin

ответ

4

следующее предложение говорит:

Создание группы может быть отключено с

1. auth.settings.create_user_groups = False 

Он продолжает говорить:

Пользователи имеют членство в групп. Каждая группа идентифицируется по имени/роли. У групп есть разрешения. У пользователей есть разрешения из-за групп, к которым они принадлежат.

Это роль управления доступом на основе ролей (RBAC) системы, поэтому группы/роли, а не отдельные пользователи получают разрешения, а пользователи получают доступ в силу групп, к которым они принадлежат (в том числе их собственной гается конкретная группа). Это объясняется более полно в chapter intro.

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

0

Вы можете добавить user2 в группу user1, чтобы user2 получал разрешения пользователя1. Его полезно во многих случаях ...

Смежные вопросы