Hallo Sobat Antmediahost, Pada kali ini kita akan membahas bagaimana cara membuat login OAuth whmcs di Laravel, Oauth sendiri dikutip dari Wikipedia merupakan suatu protokol terbuka yang memungkinkan pengguna untuk berbagi sumber pribadi mereka yang disimpan di suatu situs web dengan situs lain tanpa perlu menyerahkan nama pengguna dan kata sandi mereka.
WHMCS sendiri menggunakan OpenID Connect sebagai standar unruk SInggle sign-on (SSO) agar aplikasi dapat tehubung dengan WHMCS. Agar dapat membuat login OAuth OpenID Connect di Laravel adalah sebagai berikut.
1. Install Laravel
silahkan install laravel
composer create-project laravel/laravel OpenIDLogin2. Masuk ke project Laravel
cd OpenIDLogin3. Instal Package
composer tunggu sampai instalisasi package selesai
4. Tambahkan konfigurasi ke config/services.php
'whmcs'Kode diatas digunakan untuk konfigurasi driver whmcs seperti client_id dll yang dapat di ubah melalui file .env
5. Tambahkan Environment Variable pada file .env
Tambahkan kode berikut di baris paling bawah pada file .env
WHMCS_CLIENT_ID=Untuk mendapatkan client_id, client Secret, dan redirect url. Anda harus mendaftarkan aplikasi pada whmcs, silahkan cek link berikut https://docs.whmcs.com/OpenID_Connect untuk mengetahui cara mendaftarkannya.
6. Menambahkan Provider Event Listener
Tambahkan event ke dalam array $listen[] di app/Providers/EventServiceProvider. Seperti berikut.
protected7. Menambahkan kode redirect login
Setelah semua konfigurasi di lakukan, Langkah selanjutnya tinggal menambahkan kode redirect login pada route atau controller Laravel.
return8. Menambahkan kode Get User Deatail pada callback
Kemudian Langkah selanjutnya adalah menambahkan kode get user detail pada route/controller callback.
$user = Socialite::driver('whmcs')->user();Variable $user akan berisi json data detail user yang nantinya dapat di gunakan untuk hal lain.
9. Menjalakan aplikasi
Setelah selesai Langkah terakhir adalah mengetes apakah aplikasi dapat berjalan atau tidak dangan mengaktifkan Laravel serve
php artisan serveFAQ
Apa itu OAuth di WHMCS?
OAuth adalah protokol standar yang memungkinkan aplikasi pihak ketiga melakukan otentikasi atas nama pengguna tanpa perlu menyimpan password mereka secara langsung. WHMCS mendukung OAuth 2.0 sebagai metode aman untuk integrasi dan SSO (Single Sign-On).
Mengapa menggunakan WHMCS sebagai OAuth Provider?
Dengan menjadikan WHMCS sebagai provider OAuth, Laravel atau aplikasi lain bisa mengizinkan login menggunakan akun WHMCS sehingga memudahkan integrasi dan menjaga keamanan kredensial.
Komponen utama dalam setup OAuth untuk Laravel-WHMCS?
Komponen meliputi Client ID, Client Secret, Redirect URI, endpoint authorize & token, serta pengaturan scope hak akses yang diberikan.
Risiko keamanan yang perlu diperhatikan?
Pengaturan yang lemah atau penanganan token yang kurang aman bisa menyebabkan kebocoran akses; redirect yang tidak aman juga bisa memicu phishing atau replay attack.
Kapan sesi OAuth dianggap berhasil?
Saat pengguna mengizinkan OAuth di WHMCS, token akses diberikan, Laravel menerima token, dan user berhasil diarahkan kembali ke aplikasi Laravel dalam keadaan sudah terautentikasi.
Apa batasan umum menggunakan OAuth dengan WHMCS?
Beberapa batasan bisa muncul seperti sinkronisasi data pengguna (profil/role), opsi logout di banyak aplikasi, serta kebutuhan konfigurasi tambahan di Laravel agar flow OAuth bisa berjalan lancar.









