やっぱりACLは難しい。整理の意味も含めてもう一度入門しておく。(今回はCakePHP1.3.2です)
まずデータベースの準備から。
スポンサードリンク
CREATE TABLE prefix_users ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, username VARCHAR(255) NOT NULL UNIQUE, password CHAR(40) NOT NULL, group_id INT(11) NOT NULL, created DATETIME, modified DATETIME ); CREATE TABLE prefix_groups ( id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, created DATETIME, modified DATETIME ); CREATE TABLE `prefix_acos` ( `id` int(10) NOT NULL AUTO_INCREMENT, `parent_id` int(10) DEFAULT NULL, `model` varchar(255) DEFAULT NULL, `foreign_key` int(10) DEFAULT NULL, `alias` varchar(255) DEFAULT NULL, `lft` int(10) DEFAULT NULL, `rght` int(10) DEFAULT NULL, PRIMARY KEY (`id`) ); CREATE TABLE `prefix_aros` ( `id` int(10) NOT NULL AUTO_INCREMENT, `parent_id` int(10) DEFAULT NULL, `model` varchar(255) DEFAULT NULL, `foreign_key` int(10) DEFAULT NULL, `alias` varchar(255) DEFAULT NULL, `lft` int(10) DEFAULT NULL, `rght` int(10) DEFAULT NULL, PRIMARY KEY (`id`) ); CREATE TABLE `prefix_aros_acos` ( `id` int(10) NOT NULL AUTO_INCREMENT, `aro_id` int(10) NOT NULL, `aco_id` int(10) NOT NULL, `_create` varchar(2) DEFAULT '0' NOT NULL, `_read` varchar(2) DEFAULT '0' NOT NULL, `_update` varchar(2) DEFAULT '0' NOT NULL, `_delete` varchar(2) DEFAULT '0' NOT NULL, PRIMARY KEY (`id`), UNIQUE KEY `ARO_ACO_KEY` (`aro_id`, `aco_id`) );
コメント