Instalacija Ion Auth 2

Instalacija Ion Auth 2

instalacija ion auth 2

Nakon što ste naučili kako da instalirate codeigniter i izvršite osnovna podešavanja, prelazimo na instalaciju Ion Auth. Codeigniter nema ugrađen sistem za autorizaciju korisnika, tako da imate mogućnost ili da napišete svoju klasu, ili da iskoristite neku od postojećih. Iz mog iskustva Ion Auth se pokazao kako najbolje rešenje, koje nudi osnovne funkcionalnosti, ali se vrlo lako može nadograditi.

Postavljanje Ion Auth fajlova

Idite na https://github.com/benedmunds/CodeIgniter-Ion-Auth i preuzmite Ion Auth arhivu. Raspakujte zip fajl na računar i prebacite fajlove na server, i to u folder application koji ste kreirali prilikom instalacije codeignitera.

Kreiranje baze podataka

S obzirom da Ion Auth koristi bazu podataka za smeštanje podataka o korisnicima, neophodno je da se kreiraju odgovarajuće tabele u bazi podataka. Pronađite fajl ion_auth.sql koji se nalazi u sql folderu raspakpovane arhive, i pristupite bazi podataka. Ovaj fajl ćemo iskoristiti za kreiranje tabela koje se koriste za smeštanje korisnika, tipova korisnika (uloga) i sesija.

Sada je potrebno da pristupite bazi podataka, najverovatnije korišćenjem phpmyadmin, i da uvezete ion_auth.sql fajl. Kada to uradite, baza podataka bi trebalo da ima strukturu kao na slici. S obzirom da ćemo koristiti bazu podataka za upravljanje sesijama, neophodna nam je još jedna tabela za sesije. Vratite se opet u phpmyadmin i izvršite sledeće sql komande:

CREATE TABLE IF NOT EXISTS `ci_sessions` (
`id` varchar(40) NOT NULL,
`ip_address` varchar(45) NOT NULL,
`timestamp` int(10) unsigned DEFAULT 0 NOT NULL,
`data` blob NOT NULL,
KEY `ci_sessions_timestamp` (`timestamp`)
);

Konfigurisanje Ion Auth

Nakon što ste prebacili fajlove na server, otvorite ponovo application/config/config.php fajl, i pronađite sledeći kod:

$config['sess_driver'] = 'files';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = NULL;
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;

Ova podešavanja je neophodno promeniti da bi bilo omogućeno upravljanje sesijama preko baze podataka, tako da bi nakon izmena kod trebao da izgleda otprilike ovako:

$config['sess_driver'] = 'database';
$config['sess_cookie_name'] = 'ci_session';
$config['sess_expiration'] = 7200;
$config['sess_save_path'] = 'ci_sessions';
$config['sess_match_ip'] = FALSE;
$config['sess_time_to_update'] = 300;
$config['sess_regenerate_destroy'] = FALSE;

Snimite izmene, i zatvorite fajl.

Sada je još potrebno da se naprave određene izmene u /accplication/config/ion_auth.sql fajlu, koje se odnose na osnovne informacije o sajtu:

$config['site_title'] = "Ime sajta";
$config['admin_email'] = "primer@primer.com";

U ovom fajlu možete izvršiti još neka podešavanja vezana za funkcionisanje Ion Auth.

Velika verovatnoća je da će biti potrebno da se izvrši još jedna izmena u ovom fajlu, a koja se odnosi na slanje mejlova koji se koriste pri verifikaciji naloga, i oporavak lozinke. Pronađite podešavanje use_ci_email, koje se odnosi na način slanja mejlova, i ukoliko želite da koristite klasu codeignitera za slanje mejlova, ovo podešavanje bi trebalo da izgleda ovako:

$config['use_ci_email'] = TRUE;

Testiranje Ion Auth

Za testiranje Ion Auth, idite na vaš sajt i dodajte /auth na kraj URL-a, i trebalo bi, ako je sve u redu, da bude prikazana forma za prijavu korisnika.


Za prijavu, koristite podrazumevani email i lozinku:

username: admin@admin.com
password: password

Nakon prijave, bićete preusmereni na početnu stranu.

Ion Auth poseduje samo osnovne, ali veoma važne funkcionalnosti. Pored prijave, obezbeđen je sistem za oporavak zaboravljene lozinke i promenu lozinke, kreiranje i izmenu korisničkih naloga od strane administratora, kreiranje grupa korisnika, odnosno uloga. Ono što trenutno nedostaje od važnih funkcija je mogućnost registrovanja korisnika, tako da ćemo taj deo posla odraditi u sledećem tekstu.