Authentifikasi user merupakan salah satu kebutuhan pokok dalam sebuah aplikasi web. Hampir setiap web dinamis mengimplementasikan fitur ini. Baik yang sudah multi level atau hanya satu level saja. Aplikasi CMS pun juga mengimplementasikan hal ini, baik wordpress, joomla, drupal. Authentifikasi ini berfungsi sebagai pengecek apakah seorang user berhak untuk mengakses fungsi atau halaman tertentu dari sebuah web. Sebagai contoh dalam wordpress tentunya anda tidak dapat masuk dalam dashboard admin apabila anda tidak login sebagai anda.
Nah, kali ini saya akan membahas tentang bagaimana implementasi Authentifikasi pada cakephp. Pada Cakephp authentifikasi di handle oleh 2 component yaitu Auth dan ACL. Dimana Auth sebagai fungsi pengeceknya, dan ACL sebagai konfigurasi list user dan function yang akan diakses.
Pertama kali kita akan membuat table sebagai contoh Auth. Kita akan membuat table users, groups, posts, dan comments.
CREATE TABLE 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 groups (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
created DATETIME,
modified DATETIME
);
CREATE TABLE posts (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
user_id INT(11) NOT NULL,
title VARCHAR(255) NOT NULL,
body TEXT,
created DATETIME,
modified DATETIME
);
CREATE TABLE comments (
id INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
sender VARCHAR(100) NOT NULL,
content TEXT,
created DATETIME
);



