IMPLEMENTASI SINGLE SIGN ON SYSTEM MENGGUNAKAN PROTOKOL OAUTH (STUDI KASUS : E-COMMERCE)
Tugas Akhir
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Oleh : Deanita Mandasari 09560231
JURUSAN INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MUHAMMADIYAH MALANG 2014
LEMBAR PERSETUJUAN
IMPLEMENTASI SINGLE SIGN ON SYSTEM MENGGUNAKAN PROTOKOL OAUTH (STUDI KASUS : E-COMMERCE)
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Menyetujui
Pembimbing I
Pembimbing II
Hariyady, S.Kom, MT NIP : 101.9406.0262
Aminudin, S.Kom NIDN : 070 1068 603
ii
LEMBAR PENGESAHAN
IMPLEMENTASI SINGLE SIGN ON SYSTEM MENGGUNAKAN PROTOKOL OAUTH (STUDI KASUS : E-COMMERCE)
TUGAS AKHIR
Sebagai Persyaratan Guna Meraih Gelar Sarjana Strata 1 Teknik Informatika Universitas Muhammadiyah Malang
Disusun Oleh : DEANITA MANDASARI 09560231
Tugas akhir ini telah diuji dan dinyatakan lulus melalui sidang majelis penguji pada tanggal 07 Januari 2014
Menyetujui, Penguji I
Penguji II
Galih Wasis Wicaksono, S.Kom
Dhebys Suryani N., S.Kom, MT
Mengetahui, Ketua Jurusan Teknik Informatika
Eko Budi Cahyono, S.Kom, MT NIP : 108.9504.0330 iii
LEMBAR PERNYATAAN
Yang bertanda tangan dibawah ini : NAMA
: DEANITA MANDASARI
NIM
: 09560231
FAK /JUR
: TEKNIK/INFORMATIKA
Dengan
ini
saya
menyatakan
bahwa
Tugas
Akhir
dengan
judul
“IMPLEMENTASI SINGLE SIGN ON SYSTEM MENGGUNAKAN PROTOKOL OAUTH (STUDI KASUS : E-COMMERCE)” beserta seluruh isinya adalah karya saya sendiri dan bukan merupakan karya tulis orang lain, baik sebagian maupun seluruhnya, kecuali dalam bentuk kutipan yang telah disebutkan sumbernya. Demikian surat pernyataan ini saya buat dengan sebenar-benarnya. Apabila kemudian ditemukan adanya pelanggaran terhadap etika keilmuan dalam karya saya ini, atau ada klaim dari pihak lain terhadap keaslian karya saya ini maka saya siap menanggung segala bentuk resiko/sanksi yang berlaku.
Mengetahui,
Malang, 3 Januari 2014
Dosen Pembimbing
Yang Membuat Pernyataan
Hariyady S.Kom, MT NIP : 101.9406.0262
Deanita Mandasari NIM : 09560231
iv
ABSTRAK
Pada zaman teknologi seperti saat ini teknologi single sign on sangat diminati, khususnya dalam jaringan yang sangat besar dan bersifat heterogen (di saat sistem operasi serta aplikasi yang digunakan oleh komputer adalah berasal dari banyak vendor, dan pengguna dimintai untuk mengisi informasi dirinya ke dalam setiap platform yang berbeda tersebut yang hendak diakses oleh pengguna). Dengan menggunakan SSO, seorang pengguna hanya cukup melakukan proses autentikasi sekali saja untuk mendapatkan izin akses terhadap semua layanan yang terdapat di dalam jaringan. Dengan menggunakan protokol OAuth, seorang pengguna dapat memberikan kuasa pada client untuk mengakses data terproteksinya yang berada di server dengan memberikan token tanpa harus menyerahkan username dan password. OAuth mengizinkan seorang pengguna untuk memberikan akses kepada situs pihak ketiga untuk mengakses informasi mereka yang disimpan di penyedia layanan lain tanpa harus membagi izin akses atau keseluruhan data mereka. Single Sign On System dengan memanfaatkan protokol OAuth merupakan teknologi autentikasi dengan kode token sebagai pengganti username dan password dengan penelitian ini diharapkan dapat mempermudah pengguna dalam melakukan autentikasi pada aplikasi E-Commerce menggunakan akun provider yang mendukung protokol OAuth, sehingga berpengaruh positif terhadap transaksi perdagangan.
Kata Kunci : Single Sign On System, Protokol Oauth, Sosial Media, E-Commerce
v
ABSTRACT
In this technology era, single technology of sign on is technology in great demand, especially in very large networks and heterogeneous (in current operating system and applications used by computers is derived from many vendors are asked to fill in the information itself into every platform the different to be accessed by the user). By using SSO, a user just simply attempt to authenticate only once to obtain permits, access to all services contained within the network. By using the OAuth protocol, a user can authorize the client to access protected data already residing on the server by giving the token without having submitted a username and password. OAuth allows a user to grant access to thirdparty sites to access their information stored on another service provider without having to split the access permissions or all of their data. Single Sign On system with utilized OAuth protocols is authentication technology with token code instead of the username and password. This research was expected to facilitate the user to authenticate the e-commerce application using the account provider that supports OAuth protocol, so that a positive effect on trade. Keywords: Single Sign On System, Oauth Protocol, Social Media, E-Commerce
vi
LEMBAR PERSEMBAHAN
Alhamdulillah, ucapan rasa syukur saya kepada Allah SWT, yang telah membukakan jalan kepada penulis untuk dapat menyelesaikan Tugas Akhir ini dengan hasil yang memuaskan. Dalam menyelesaikan Tugas Akhir ini penulis memberikan rasa hormat dari hati yang terdalam kepada seluruh pihak yang memberikan motivasi dan semangatnya kepada penulis hingga terselesaikannya Tugas Akhir ini, rasa hormat dan ucapan terimakasih yang sebesar-besarnya saya haturkan kepada : 1.
Ayah yang sangat dirindukan Sadaruddin, SE (Alm) seandainya masih hidup, betapa senangnya bisa membuat bangga beliau. Dan untuk Mama Mardawiyah Yusuf, SE yang telah memberikan Ridhonya untuk melepas anaknya jauh di seberang pulau untuk belajar. Do’a, semangat, materi hingga moril di perjuangkan untukku, semoga Allah SWT melindungi (amin).
2.
Adekku Sandy yang sudah beranjak dewasa, Afifah, Aqilah, Neha, Fildzah, Qaedi sepupu yang lucu dan kusayang. Acil Yuli, Om Mail, Om Anang dan Acil Atul terima kasih atas doa, semangat dan materi sehingga menguatkan dea sampai sekarang. Nenek Nuang super yang selalu membuat hati tenang dan damai dengan tangan dewanya ketika di dapur semua makanan selalu enak.
3.
Bapak Hariyadi S. Kom., MT selaku pembimbing I dan Bapak Aminudin, S.Kom selaku pembimbing II, yang memberikan masukan, arahan serta bimbingan selama penulis mengerjakan Tugas Akhir ini.
4.
Bapak Eko Budi Cahyono S.Kom, MT selaku Ketua Jurusan Teknik Informatika UMM. Bapak Galih Wasis Wicaksono, S.Kom selaku dosen penguji I dan Ibu Dhebys Suryani H., S.Kom, MT selaku penguji II, yang telah memberikan kritik serta saran yang bermanfaat demi terselesaikan Tugas Akhir ini.
5.
Kepada Dosen serta Staff FT-UMM khususnya jurusan Teknik Informatika yang telah banyak memberikan bantuan selama penulis kuliah di UMM.
6.
Okii Dokii \0_0/ yang selalu ada dalam susah maupun senang, mood booster, tempat curhat, tempat melampiaskan amarah, berantem kayak anak kecil.
vii
Achmad Fikri Setyawan a.k.a kentung, Evita Fidyasari a.k.a koreak, Nurin Adi Rachmawati a.k.a chef, Tri Haidar Muhammad a.k.a babon, Desi Ariana Sari a.k.a madura spt, Teddy Abdurahman a.k.a keong, Hafizh Nurul Irsyad a.k.a sucong, Octavi Putri Liberta a.k.a mba bee, Lailatul Khusnia a.k.a onyet, kalian bukan teman biasa kalian itu keluarga sampai akhir zaman. 7.
Teman-teman asisten 2009 yang sudah pilih dea buat masuk jadi asisten lanjut parttime, karena kalian derajat keeksisan + kegaulan meningkat 5 strip dan membuat bangga orang rumah serta bisa 5 langkah lebih dekat dengan semua dosen sehingga mempermudah dalam pembuatan skripsi ini.
8.
Buat pacar Ridwan Wahyudi yang sering mengganggu dalam proses pembuatan skripsi dan tidak membantu sedikitpun terima kasih sudah menjadi figuran di pengujian sistem dalam Tugas Akhir ini.
9.
Ruangan Kajur Lama atau Lab. Training Center sebagai tempat bersejarah dan berperan penting dalam pembuatan Tugas Akhir ini.
10. Teman-teman ladies skatel 8 seperjuangan yang memberi dorongan dan semangat agar cepat menyelesaikan TA terima kasih banyak Eka, Mika, Nisa, Intan, Nina, Rini dan Geulis yang sangat membantu dalam pembuatan proposal. 11. Teman-teman kost kav 40 yang mengajarkan berjuang dan fight diantara kalian yang mementingkan kegaulan, harta dan lidah tajam kalian. Terima kasih karena kalian aku bisa menjadi dewasa dan pribadi yang lebih baik lagi. 12. Semua pihak yang telah membantu dan memberikan energi positif dalam menyelesaikan Tugas Akhir Ini.
Akhir kata kupersembahkan karya berharga ini untuk pembaca, khususnya Mahasiswa Fakultas Teknik Informatika Universitas Muhammadiyah Malang. Semoga Tugas Akhir ini bermanfaat dalam penelitian dan pembelajaran selanjutnya.
viii
KATA PENGANTAR
Saya panjatkan puji dan syukur ke hadirat Tuhan yang Maha Esa, karena berkat rahmat-Nya lah penulis dapat menyelesaikan penulisan skripsi yang berjudul “IMPLEMENTASI SINGLE SIGN ON SYSTEM MENGGUNAKAN PROTOKOL OAUTH (STUDI KASUS : E-COMMERCE)”. Adapun tujuan dari penulisan skripsi ini adalah sebagai salah satu syarat untuk memperoleh gelar kesarjanaan pada Jurusan Teknik Informatika di Universitas Muhammadiyah Malang. Penulis menyadari bahwa terselesaikannya karya tulis ini tidak terlepas dari bantuan berbagai pihak. Oleh karena itu, dalam proses penulisan dan penyusunan skripsi ini, penulis meminta maaf sebesar – besarnya apabila terdapat kesalahan dalam proses penyusunan skripsi ini. Penulis juga menyadari bahwa begitu banyak bantuan, dukungan dan kerjasama yang luar biasa dari berbagai pihak. Oleh karena itu, penulis mengharapkan saran yang membangun agar tulisan ini bermanfaat bagi perkembangan ilmu pengetahuan kedepan.
Malang, 3 Januari 2014
Penulis
ix
DAFTAR ISI LEMBAR PERSETUJUAN.................................................................................... ii LEMBAR PENGESAHAN ................................................................................... iii LEMBAR PERNYATAAN ................................................................................... iv ABSTRAK .............................................................................................................. v ABSTRACT ............................................................................................................ x LEMBAR PERSEMBAHAN ............................................................................... vii KATA PENGANTAR ........................................................................................... ix DAFTAR ISI ........................................................................................................... x DAFTAR GAMBAR ............................................................................................ xii DAFTAR TABEL ................................................................................................ xiv BAB I PENDAHULUAN ....................................................................................... 1 1.1 Latar Belakang ......................................................................................... 1 1.2 Rumusan Masalah .................................................................................... 3 1.3 Batasan Masalah ....................................................................................... 3 1.4 Tujuan Penelitian ...................................................................................... 3 1.5 Metodologi Pengerjaan ............................................................................. 3 1.5.1 Analisa .................................................................................................. 3 1.5.2 Mendesain Sistem ................................................................................. 4 1.5.3 Implementasi Sistem ............................................................................. 4 1.5.4 Pengujian Sistem................................................................................... 4 1.6 Sistematika Penulisan ............................................................................... 4 BAB II LANDASAN TEORI ................................................................................. 6 2.1 Sistem SSO (Single Sign On) ................................................................... 6 2.1.1 Keuntungan dan Kerugian Sistem Single Sign On ............................... 7 2.1.2 Pendekatan Sistem Single Sign On ....................................................... 8 2.1.3 Arsitektur Sistem Single Sign On ......................................................... 9 2.2 OAuth ..................................................................................................... 10 2.2.1 Sejarah OAuth..................................................................................... 11 2.2.2 Cara Kerja OAuth ............................................................................... 13 2.2.3 Keamanan Protokol OAuth................................................................. 14 2.3 Pengertian E-Commerce ......................................................................... 15 2.3.1 Konsep E-Commerce .......................................................................... 16 2.3.2 Keuntungan E-Commerce ................................................................... 16 2.4 Penelitian Terkait ................................................................................... 17 BAB III ANALISA DAN PERANCANGAN SISTEM ....................................... 21 3.1 Analisa Sistem ........................................................................................ 21 3.1.1 Analisa Sistem Sisi Single Sign On System ........................................ 21 3.1.2 Analisa Kebutuhan Sistem .................................................................. 22 3.2 Perancangan Sistem ................................................................................ 23
x
3.2.1 Perancangan Proses dari User ke Sistem ............................................ 23 3.2.2 Perancangan Proses dari Pengembang ke Sistem ............................... 25 3.3 Alur Instalasi CMS OScommerce .......................................................... 26 3.4 Alur Instalasi CMS Prestashop............................................................... 27 3.5 Alur Instalasi CMS Wordpress ............................................................... 28 BAB IV IMPLEMENTASI DAN HASIL PENGUJIAN SISTEM ...................... 30 4.1 Implementasi Sistem .............................................................................. 30 4.1.1 Konfigurasi Pemasangan ekstensi loginradius.com pd OScommerce 30 4.1.2 Konfigurasi Pemasangan ekstensi loginradius.com pd Prestashop .... 37 4.1.3 Konfigurasi Pemasangan ekstensi loginradius.com pd Wordpress ... 39 4.1.4 Implementasi Pembuatan Koneksi di Loginradius.com ..................... 41 4.1.5 Implementasi Permintaan dan Pertukaran Credential pada Facebook 44 4.1.6 Implementasi Permintaan dan Pertukaran Credential pada Twitter ... 47 4.1.7 Implementasi Permintaan dan Pertukaran Credential pada Google ... 49 4.1.8 Implementasi Permintaan dan Pertukaran Credential pada Yahoo .... 52 4.1.9 Implementasi Verifikasi Credential pada Loginradius.com ............... 54 4.2 Pengujian Sistem .................................................................................... 57 4.2.1 Skenario Pengujian Sistem ................................................................. 58 4.2.2 Analisa Hasil Pengujian ...................................................................... 58 4.2.3 Lampiran Pengujian ............................................................................ 62 BAB V KESIMPULAN DAN SARAN ................................................................ 70 5.1 5.2
Kesimpulan ............................................................................................. 70 Saran ....................................................................................................... 71
DAFTAR PUSTAKA ........................................................................................... 72 LAMPIRAN .......................................................................................................... 74 BIOGRAFI PENULIS .......................................................................................... 79
xi
DAFTAR GAMBAR Gambar 3.1 Arsitektur Sistem Keseluruhan.......................................................... 23 Gambar 3.2 Flowchart antara user ke sistem ........................................................ 24 Gambar 3.3 Flowchart antara pengembang ke sistem .......................................... 25 Gambar 3.4 Alur instalasi OScommerce ............................................................... 26 Gambar 3.5 Alur instalasi Prestashop ................................................................... 27 Gambar 3.6 Alur instalasi Wordpress ................................................................... 28 Gambar 4.1 Tampilan File Manager OScommerce .............................................. 30 Gambar 4.2 Menambahkan potongan script di public_html/admin/includes/boxes/modules.php .......................... 31 Gambar 4.3 Menambahkan potongan script di public_html/admin/includes/languages/english.php ..................... 31 Gambar 4.4 Menambahkan potongan script di public_html/admin/includes/filenames.php................................... 32 Gambar 4.5 Menambahkan potongan script di public_html/admin/includes/database_tables.php ......................... 32 Gambar 4.6 Menambahkan potongan script di public_html/includes/application_top.php .................................... 33 Gambar 4.7 Menambahkan potongan script di public_html/includes/template_top.php ........................................ 33 Gambar 4.8 Menambahkan potongan script di public_html/includes/template_bottom.php .................................. 34 Gambar 4.9 Menambahkan potongan script di public_html/includes/database_tables.php .................................... 34 Gambar 4.10 Tampilan dashboard OScommerce ................................................. 35 Gambar 4.11 Tampilan tab “boxes” dalam menu “Modules” ............................. 35 Gambar 4.12 Tampilan pengaturan modul “social login” .................................... 36 Gambar 4.13 Tampilan aktivasi loginradius.com di OScommerce ...................... 36 Gambar 4.14 Tampilan dashboard prestashop ..................................................... 37 Gambar 4.15 Tambilan tab “module” pada prestashop ........................................ 37 Gambar 4.16 Tampilan list modules yang telah diinstal ....................................... 38 Gambar 4.17 Tampilan konfigurasi modul loginradius.com di prestashop .......... 38 Gambar 4.18 Tampilan tab “Add New” pada menu “Plugins” ........................... 39 Gambar 4.19 Instalasi plugin loginradius.com pada wordpress ........................... 39 Gambar 4.20 Tampilan pemberitahuan instalasi berhasil ..................................... 40 Gambar 4.21 Tampilan plugin yang telah terinstal dalam wordpress ................... 40 Gambar 4.22 Tampilan aktivasi loginradius.com pada wordpress ....................... 41 Gambar 4.23 Tampilan dashboard loginradius.com............................................. 41 Gambar 4.24 Membuat koneksi baru .................................................................... 42 Gambar 4.25 Tampilan pilihan CMS yang support dengan loginradius.com....... 42 Gambar 4.26 Tampilan step 1 konfigurasi pembuatan koneksi e-commerce ....... 43 Gambar 4.27 Tampilan step 2 konfigurasi pembuatan koneksi e-commerce ....... 43 Gambar 4.28 Tampilan step 3 konfigurasi pembuatan koneksi e-commerce ....... 44 Gambar 4.29 Halaman utama bagi pengembang Facebook .................................. 45 Gambar 4.30 Halaman konten menu “Apps” ........................................................ 45 Gambar 4.31 Tampilan form pembuatan aplikasi di Facebook ............................ 46
xii
Gambar 4.32 Permintaan telah berhasil dibuat ..................................................... 46 Gambar 4.33 Halaman utama bagi pengembang Twitter...................................... 47 Gambar 4.34 Tampilan konten menu “My Applications” ..................................... 47 Gambar 4.35 Tampilan form permintaan otorisasi ............................................... 48 Gambar 4.36 Permintaan telah selesai dibuat ....................................................... 48 Gambar 4.37 Halaman utama bagi pengembang Google ..................................... 49 Gambar 4.38 Tampilan pembuatan client ID ........................................................ 50 Gambar 4.39 Pembuatan client ID telah berhasil.................................................. 50 Gambar 4.40 Konfigurasi otorisasi ....................................................................... 51 Gambar 4.41 Tampilan konten menu “My Projects” ............................................ 52 Gambar 4.42 Tampilan form permintaan otorisasi .............................................. 52 Gambar 4.43 Tampilan verifikasi terhadap loginradius.com ................................ 53 Gambar 4.44 Tampilan verifikasi berhasil ............................................................ 54 Gambar 4.45 Tampilan salah satu koneksi e-commerce step 2 ............................ 54 Gambar 4.46 Verifikasi terhadap Facebook.......................................................... 55 Gambar 4.47 Verifikasi terhadap Twitter ............................................................. 55 Gambar 4.48 Verifikasi terhadap Google ............................................................. 56 Gambar 4.49 Verifikasi terhadap Yahoo .............................................................. 57 Gambar 4.50 Login via Facebook ......................................................................... 62 Gambar 4.51 Login via Twitter ............................................................................. 63 Gambar 4.52 Login via Google ............................................................................ 63 Gambar 4.53 Login via Yahoo .............................................................................. 64 Gambar 4.54 Login via Facebook ......................................................................... 64 Gambar 4.55 Login via Twitter ............................................................................. 65 Gambar 4.56 Login via Google ............................................................................. 65 Gambar 4.57 Login via Yahoo .............................................................................. 66 Gambar 4.58 Login via Facebook ......................................................................... 66 Gambar 4.59 Login via Twitter ............................................................................. 67 Gambar 4.60 Login via Twitter ............................................................................. 67 Gambar 4.61 Login via Yahoo .............................................................................. 68 Gambar 4.62 Peringatan jika email yang didaftarkan sama .................................. 68 Gambar 4.63 Pengujian di OScommerce .............................................................. 68 Gambar 4.64 Pengujian di Prestashop .................................................................. 69 Gambar 4.65 Pengujian di Wordpress .................................................................. 69
xiii
DAFTAR TABEL Tabel 1 Analisa Hasil Pengujian ........................................................................... 58
xiv
DAFTAR PUSTAKA
[1]
Aminudin
(2011).
Sistem
E-Commerce.
Diambil
dari
http://infotech.umm.ac.id pada tanggal 7 juni 2011. [2]
D. Hardt. (2011). The OAuth 2.0 Authorization Protocol draft-ietf-oauth-v216.
Diambil
dari
http://tools.ietf.org/html/draft-ietf-oauth-v2-16
pada
tanggal 8 September 2013. [3]
Greg Brail dan Sam Ramji. (2012). OAuth big picture. Diambil dari http://pages.apigee.com/rs/apigee/images/oauth-ebook-2012-02.pdf
pada
tangga l 9 September 2013. [4]
Gunadarma. (2009). Aplikasi Bisnis Dengan E-Commerce. Diambil dari http://elearning.gunadarma.ac.id/docmodul/ecommerse/bab2_bisnisdengane commerce.pdf pada tanggal 3 Juli 2013.
[5]
Hendro. (2013). 5 Konsep Dasar Electronic Commerce. Diambil dari http://id.amdhas.com/blog/post/5-konsep-dasar-electronic-commerce
pada
tanggal 3 Juli 2013. [6]
Luthfi Abdurrahman. (2012). Implementasi Sistem Single Sign-On Menggunakan OpenAM dengan Otentikasi Kerberos dan OpenLDAP. Diambil dari http://repository.usu.ac.id/bitstream/123456789/31207/3/Chapter%20II.pdf pada tanggal 18 Juni 2013.
[7]
Odi Gunadi. ( 2009). Integrasi Aplikasi Menggunakan Single Sign On Berbasiskan Lightweight Directory Access Protocol (LDAP) Dalam Portal. Diambil
dari
http://ict.binus.edu/metamorph/file/research/jurnal-skripsi-
odie-v-2.1-revis-renan-RECEIVED.pdf pada tanggal 4 Juni 2013. [8]
Panggi Libersa Jasri Akadol, S.Kom. (2010). OAuth untuk pengamanan credentials
pada
akses
REST
API.
Diambil
dari
http://id.scribd.com/document_downloads/direct/38676241?extension=pdf& ft=1356934680<=1356938290&uahk=A0HApQgXqS6RlFzB4Kikd2Ahn Oc pada tanggal 24 Desember 2012.
72
[9]
Prajna Deshanta, ST. (2010). Implementasi SSO ( Single Sign On ) Menggunakan Autentikasi NCSA untuk Website di Web Server. Diambil dari http://repository.politekniktelkom.ac.id/Proyek%20Akhir/TK/IMPLEMENT ASI%20SSO%20(%20SINGLE%20SIGN%20ON%20)%20MENGGUNA KAN%20AUTENTIKAS%20NCSA%20UNTUK%20WEBSITE%20DI%2 0WEB%20SERVER.pdf pada tanggal 24 Februari 2013.
[10] Priyo Puji Nugroho. (2012). Pengembangan Model Single Sign-On untuk Layanan
Internet
dan
Proxy
IPB.
Diambil
dari
http://repository.ipb.ac.id/bitstream/handle/123456789/54741/G12ppn_BAB %20II%20Tinjauan%20Pustaka.pdf pada tanggal 25 September 2013.
73