BAB I PENDAHULUAN 1.1 Latar Belakang Amigo Group adalah toko yang melayani penjualan fashion and shoes retail yang sedang mengembangkan beberapa aplikasi salah satunya adalah presensi. Sistem presensi Amigo sebelumnya masih menggunakan Google Form yang sangat rawan terhadap kebocoran data dan kecurangan seperti titip absen. Beraneka ragam teknologi yang dapat digunakan untuk membangun sebuah aplikasi presensi ini agar performanya dan keamanannya lebih baik dari sebelumnya. Tren teknologi saat ini adalah aplikasi yang dapat terhubung dengan aplikasi lain melalui jaringan global. Teknologi tersebut kini dikenal dengan istilah Web Service APIs. Salah satu jenis dari Web Service adalah REST atau RESTful (Representational State Transfer). REST sendiri memungkinkan system request dapat mengakses dan memanipulasi teks yang direpresentasikan dari sebuah Web Service. Web Service API yang menggunakan REST disebut dengan RESTful API. Tidak seperti jenis Web Service lainnya, RESTful API tidak memiliki standar yang resmi untuk notasinya dikarenakan REST merupakan sebuah arsitektur (Doglio, 2014). Dengan berbagai implementasi, REST menemukan notasi yang biasa digunakan, seperti HTTP, URI, JSON, dan XML. Dalam penggunaannya, REST API terbukti lebih cepat (Dudhe & Sharekar, 2014) dan mudah untuk dikembangkan(scale) terutama dalam pertukaran dan komunikasi data (Putra, 2019). Restful API sangat membutuhkan Autentikasi yang dapat memilah mana 1
user yang diizinkan dan tidak diizinkan untuk mengakses APIs dengan menggunakan Token yang dihasilkan secara otomatis. Metode autentikasi tersebut dikenal dengan istilah JWT (JSON Web Token). Json Web Token adalah sebuah token berbentuk string JSON yang sangat padat (ukurannya), informasi mandiri yang gunanya sendiri untuk melakukan sistem autentikasi dan pertukaran informasi. Karena bentuknya kecil, token JWT dapat dikirim melalui URL, parameter HTTP POST atau di dalam header HTTP, dan juga karena ukurannya yang kecil maka dapat ditransmisikan dengan lebih cepat. Disebut informasi mandiri karena isi dari token yang dihasilkan memiliki informasi dari pengguna yang dibutuhkan, sehingga tidak perlu query ke basis data lebih dari satu kali (Rahmatulloh dkk, 2018). Beberapa penyedia layanan Autentikasi menggunakan JWT yang Trend saat ini yaitu Firebase Authentication dan Auth0. Firebase Authentication dirancang menjadi satu SDK untuk memudahkan pengembangan otentikasi menggunakan metode Sign-in yang sudah disediakan oleh Firebase Authentication (Moroney, 2017) secara gratis pada layanan autentikasi social media dan tidak memiliki batasan pada metode Sign-in social media yang digunakan. Metode Sign-in yang disediakan oleh Firebase Authentication yaitu : Email/Sandi, Ponsel, Google, Play Game, Game Center Facebook, Twitter, Github, Yahoo, Microsoft, Apple dan Anonim. Sama halnya dengan Firebase Authentication, Auth0 juga dirancang menjadi satu SDK tetapi beberapa fitur di beri batasan seperti 7000 pengguna aktif, dan membatasi 2 metode Sing-in saja dari seluruh metode yang disediakan. Oleh 2
karena itu Firebase Authentication sangatlah digemari oleh banyak pengembang aplikasi terutama Web Service dan Mobile karena kemudahannya dan tidak ada batasan pada metode Sing-in dan pengguna aktif. Dari latar belakang yang telah disebutkan sebelumnya, maka dalam penelitian ini akan diimplementasikan Keamanan RESTful API dengan keamanan Firebase Authentication pada aplikasi presensi di C.V Amigo Mangesti Utomo. 1.2 Rumusan Masalah Rumusan masalah dari latar belakang yang telah dituliskan sebelumnya adalah bagaimana mengimplementasikan Restful API dengan keamanan Firebase Authentication sebagai metode pertukaran data untuk digunakan oleh aplikasi presensi di C.V Amigo Mangesti Utomo 1.3 Ruang Lingkup Agar dapat mencapai sasaran dan tujuan yang diharapkan pada implementasi keamanan RESTful API dengan Firebase Authentication maka ruang linkupnya adalah sebagai berikut : a. Membuat REST API untuk komunikasi antar Frontend dengan Database (Mysql). b. Membuat API menggunakan framework PHP yaitu Laravel. c. Secure API dengan menggunakan Firebase Authentication. d. DBMS menggunakan Mysql. e. Pengujian REST API dan keamanan Firebase Authentication menggunakan Postman. 3
1.4 Tujuan Penelitian Tujuan dari penelitian ini adalah bagaimana membuat REST API dengan menambahkan faktor keamanan menggunakan teknologi Firebase Authentication untuk diimplementasikan pada aplikasi presensi C.V Amigo Mangesti Utomo. 1.5 Manfaat Penelitian Manfaat dari penelitian ini adalah keamanan pada sebuah RESTful API dengan metode Firebase Authentication pada aplikasi Presensi C.V Amigo Mangesti Utomo agar supaya API tidak dapat diakses sembarangan oleh user. 1.6 Sistematika Penulisan Berikut merupakan sistematika penulisan skripsi yang akan dibuat : BAB I. PENDAHULUAN Pada bab ini berisi tentang penjelasan mengenai latar belakang masalah, rumusan masalah, ruang lingkup, tujuan penelitian, manfaat penelitian dan sistematika penulisan. BAB II. TINJAUAN PUSTAKA DAN DASAR TEORI Pada bab ini berisi tentang pembahasan sumber pustaka yang digunakan sebagai pedoman perancangan penelitian dan penjelasan yang berhubungan dengan penelitian yang digunakan sebagai landasan dalam penelitian. BAB III. METODE PENILITIAN Pada bab ini berisi tentang pembahasan analisis kebutuhan, bahan/data, peralatan dan perancangan sistem yang akan digunakan. 4
BAB IV. IMPLEMENTASI DAN PEMBAHASAN Pada bab ini menguraikan tentang pembuatan aplikasi yang merupakan implementasi dari hasil analisa dan perancangan, pengujian sistem dan kesimpulan. BAB V. PENUTUP Pada bab ini berisi kesimpulan yang dihasilkan dari pembahasan penerapan sistem dan saran-saran guna pengembangan sistem yang telah dibuat. 5