Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Roles в Кохане
http://forum.kohanaframework.su/viewtopic.php?f=31&t=663
Страница 1 из 1

Автор:  Neumann [ 03 июн 2013, 14:12 ]
Заголовок сообщения:  Roles в Кохане

Добрый день.

Подскажите пожалуйста.
Использую Auth. Не пойму с roles. Там две роли 1 (login) и 2 (admin).
Присваивая 2 ничего не происходит, как будто и не присваивали. Т.е. пользователь не логинится и смысла нет.

И всем пользователям приходится в таблице roles_users присваивать 1.
Какая-то бессмыслица получается. Какой смысл от этих ролей, если приходится просто заполнять таблицу roles_users единицами в каждой записи.

Я понимаю, что могу добавить 3 роль в roles и присваивать ее. Но пользователь логинится не будет. и под 2 не логинится.

Объясните, пожалуйста, смысл этих ролей. Я подозреваю, что это важная штука.

Автор:  slider23 [ 03 июн 2013, 14:28 ]
Заголовок сообщения:  Re: Roles в Кохане

В Кохане так просто принято.
"Роль" - это разрешение пользователю на какие-то действия. Да, сейчас, чтобы пользователь залогинился, надо присваивать ему роль login. Сделано это для обучения, насколько я понимаю, чтобы показать что у пользователя может быть несколько ролей.
Если хотите, переопределите это поведение у себя в приложении. Учет роли login происходит в методе _login класса Kohana_Auth_ORM (modules/orm/classes/Kohana/Auth/ORM.php) - переопределите её у себя в class Auth_ORM extends Kohana_Auth_ORM { function _login(){} }

Автор:  Neumann [ 04 июн 2013, 02:23 ]
Заголовок сообщения:  Re: Roles в Кохане

Т.е. во всех проектах на Кохане (где есть авторизация через Auth) делается так? Таблица roles_users заполняется записями, где пользователям присваивается 1?

Автор:  slider23 [ 04 июн 2013, 10:04 ]
Заголовок сообщения:  Re: Roles в Кохане

Да, во всех проектах на Кохане, где юзается дефолтная схема Auth, делается так.

Автор:  nkl [ 04 июн 2013, 10:07 ]
Заголовок сообщения:  Re: Roles в Кохане

Да, это сделано не столько из-за обучения, сколько из-за возможности запрещать доступ тем или иным пользователям. Ну как здесь на форуме, пока админ не подтвердил регистрацию, войти на форум нельзя. Так же и это. Пользователь может зарегиться, но по умолчанию вход ему будет запрещен и только после того как ему будет присвоена роль login, он сможет логиниться. Банить пользователей можно, не удаляя при этом его учетной записи, просто запретить доступ удалив у него роль login. Хотя конечно, как уже писал slider23, все это можно переопределить для конкретного приложения.

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/