Minggu, 02 Agustus 2015

Implementasi Simple Single Sign On PHP

Salam buat para rekan-rekan informatika. Saat ini admin akan membagikan pengalaman dalam pembuatan single sign on menggunakan php. Konsep ini hanya konsep sederhana untuk mendapatkan inti dari apa itu single sign on, dan masih ada banyak bentuk implementasi lainnya, dengan berbagai platform yang berbeda juga. Single sign on di sini hanya menangani authentikasi untuk domain yang berbeda. Bisa juga di kembangkan untuk authorisasi, berbagi cookies, dan lain sebagainya.
Project terdiri atas tiga bagian, yaitu senderCookies, serverCookies, dan receiverCookies. Berikut adalah fungsi dari ketiga project tersebut.
1.       Sender cookies.
ð  Berisi form login, dengan input username dan password. Form tersebut menggunakan method “POST” dan mengacu ke serverCookies yang akan memproses data input dari form senderCookies. Setelah proses authentikasi di lakukan, maka senderCookies akan menerima hasil dari serverCookies. Jika berhasil (valid), maka tampilan dari senderCookies akan berubah.
2.       Server cookies.
ð  Berisi proses atau code yang berfungsi untuk memproses input dari setiap server yang mengirimkan data melalui POST. Berisi username dan password valid yang akan di gunakan untuk mengauthentikasi user credentials.
ð  Jika login berhasil, maka akan mengirimkan kembali data ke setiap website login yang di daftarkan melalui iframe.
3.       Receiver cookies.
ð  Berisi form login, sama seperti pada sender cookies, di gunakan sebagai penampung hasil login, misalnya ketika sender cookies sudah login, jadi receiver cookies juga seharusnya sudah dalam keadaan login ketika di refresh kembali.

Dalam tutorial ini, admin menggunakan http://localhost dan https:127.0.0.1 untuk penggunaan session yang berbeda, bisa juga menggunakan domain.

Berikut gambarnya :
Login form : localhost

Login form : 127.0.0.1

After Login : localhost

After login : 127.0.0.1


Demikian penjelasan singkat tentang implementasinya, untuk source code dapat di download melalui link di bawah ini :