SSO – Single Sign-On mampu memberikan solusi untuk kamu agar dapat mengakses sumber daya dari berbagai jaringan atau aplikasi hanya dengan menggunakan satu akun pengguna saja.
Seperti yang kita ketahui, hampir semua aplikasi mewajibkan kita sebagai pengguna untuk membuat akun dan password. Karena cukup banyak aplikasi yang kita gunakan, seringkali kita lupa dengan username dan password akun yang telah kita buat. Sehingga kita perlu melakukan reset-password agar dapat masuk pada aplikasi terkait.
Nah, masalah semacam inilah yang kemudian membuat sistem login Single Sign-On (SSO) hadir sebagai solusi dan cukup populer hingga sekarang.
Pada artikel kali ini, kita akan mengulas tuntas tentang apa itu SSO.
Apa itu Single Sign-On (SSO)
Single Sign-On (SSO) adalah sebuah mekanisme autentikasi agar dapat mengakses keseluruhan sumber daya (resource) dari beberapa situs maupun aplikasi hanya menggunakan satu akun saja. SSO memudahkan proses pengelolaan akun pengguna secara terpusat.
Sistem keamanan SSO sangat ketat. Biasanya, sistem pada aplikasi menyimpan kredensial akun kamu melalui server SSO yang kredibel. Sistem tersebut juga memfasilitasi pemberian hak akses untuk masuk ke dalam database pengguna, seperti direktori Lightweight Directory Access Protocol (LDAP).
Contoh SSO yang paling umum adalah Google Account. Kamu cukup membuat satu akun Google saja, maka kamu dapat mengakses Youtube, Gmail, Google Meet, dan semua aplikasi yang terhubung dengan autentikasi Google.
Teknologi SSO
Pada kenyataannya, SSO memiliki beberapa alternatif teknologi, dengan fokus solusi yang berbeda, berikut beberapa contoh dari teknologi SSO :
- Enterprise Single Sign-On, bisa kamu gunakan pada terminal emulator, client-server, maupun web. Namun perlu install agent di setiap end-point yang berinteraksi dengan pengguna. Cocok untuk karyawan perusahaan.
- Multi Domain Web Single Sign-On, hanya bisa kamu gunakan pada web saja, namun tidak perlu install agent/plugins. Cocok untuk subscriber dan customer.
- Federated Identity, penggunaannya sangat luas mencakup Web SSO, Web Service Federation, hingga SSO untuk client-server. Tapi, mekanisme perlu integrasi yang kuat pada aplikasinya, hanya didukung oleh software tertentu saja.
Standar Konfigurasi SSO
Terdapat 3 konfigurasi teknologi SSO yang biasanya digunakan, yaitu SAML, OAuth 2.0, dan OpenID Connect.
1. SAML
SAML (Security Assertion Markup Language) biasanya dipakai oleh perusahaan untuk mengautentikasi pengguna dan memberikan hak izin untuk mengakses sistem perusahaan. SAML merupakan sebuah protokol SSO standar terbuka yang memberikan fungsi autentikasi dan otorisasi berbasis assertion (penegas) berupa XML.
SAML dikenalkan pada tahun 2001 dan mendapat pembaharuan besar pada tahun 2005 sampai saat ini, yaitu SAML 2.0.
2. OAuth 2.0
OAuth 2.0 adalah kepanjangan dari Open Authorization versi ke 2 yang biasa digunakan untuk otorisasi pada aplikasi berbasis web. Dengan menggunakan protokol ini, maka aplikasi pihak ketiga dapat mengakses data dari aplikasi yang telah kamu bangun.
Framework ini digunakan oleh berbagai perusahaan besar seperti Google, Facebook, dll.
3. OpenID
OpenID adalah standar autentikasi terbuka yang diperkenalkan oleh Open ID Foundation. Diperkenalkan pada tahun 2006, dan pada Februari 2014 generasi ketiga Open ID disebut Open ID Connect (OIDC) diluncurkan. Penyempurnaan ini menambahkan layer autentikasi yang berbasi OAuth 2.0, yang dapat digunakan untuk bertukar informasi pengguna menggunakan Restful HTTP API dengan format JSON.
Kenapa Harus Menggunakan Single Sign-On (SSO)
Penggunaan SSO lebih efektif karena bisa memberikan akses ke beberapa aplikasi sekaligus sekali login. Berikut ini adalah beberapa kelebihan atau keunggulan ketika kamu menggunakan SSO.
- Mempermudah pengaturan nama pengguna dan password
- Meningkatkan perlindungan identitas dan risiko terkena phising.
- Tidak takut lupa password
- Mempercepat proses masuk, hal ini sangat berpengaruh terhadap beberapa sektor seperti layanan darurat, rumah sakit, dan beberapa aplikasi lain yang membutuhkan akses cepat untuk mendapatkan fasilitas terbaik.
- Meringankan beban kerja IT support, bayangkan jika banyak pengguna yang melakukan konsultasi karena lupa password misalnya.
- Mengurangi risiko keamanan pelanggan, vendor, dan partner.
Kelemahan Sistem Single Sign-On (SSO)
Selain memiliki beberapa kelebihan diatas, SSO juga memiliki kelemahan, antara lain:
- Apabila kredensial pengelola layanan jaringan diketahui oleh orang yang tidak berhak, maka orang tersebut dapat melakukan perubahan terhadap semua data yang ada didalam sistem.
- Kerumitan mengimplementasikan sistem SSO ke dalam sebuah jaringan yang heterogen dan multiplatform.
- Titik kegagalan tunggal (Single Point Failure), karena setiap layanan aplikasi bergantung kepada sistem Single Sign-On. Sistem ini dapat menjadi suatu titik kegagalan bila dirancang dengan kurang baik.