Путаница в CakePHP по поводу ACL

На веб-сайте CakePHP показано, что вы должны создать таблицу пользователей и таблицу групп для пользователей и групп пользователей с помощью ACL: http://book.cakephp.org/view/1544/Preparing-our-Application

Однако большинство других руководств, например NetTuts показывает создание трех таблиц (в дополнение к таблице пользователей) для использования ACL: http://net.tutsplus.com/tutorials/php/how-to-use-cakephps-access-control-lists/

Какая разница между двумя? Thanls


person Cameron    schedule 23.01.2011    source источник


Ответы (1)


если вы спрашиваете о дополнительных таблицах с именами Acos, Aros и aros_acos

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

В любом случае, cakePHP нуждается в 5 таблицах для безупречной работы ACL. Acos, Aros и aros_acos являются таблицами, определенными cakePHP, а Пользователи и группы являются таблицами, определенными пользователем.

CakePHP хранит разрешения пользователей в виде дерева с помощью Aros (объекты запроса доступа означают пользователей). Связь hasAndBeongsToMany с Acos (объекты контроля доступа означают действия)

person RSK    schedule 23.01.2011
comment
Почему в учебнике по Cake никогда не упоминаются три таблицы, а в учебнике NetTuts никогда не упоминается таблица групп? - person Cameron; 23.01.2011
comment
cakebook использует командную строку для его запекания. так что команда cake schema create DbAcl создает необходимые таблицы. пожалуйста, пройдите по ссылке, которую я предоставил. Nettuts не упомянул группы, потому что в своем примере приложения они устанавливают разрешение только для пользователей, а не для групп. Думаю, я не сказал, что группа является обязательной. Я упомянул 5 таблиц для идеальной функциональности ACL. - person RSK; 24.01.2011