itmm / sso
Package untuk integrasi dengan SSO mmart
v4.0.0
2026-08-21 02:57 UTC
Requires
- php: ^8.2
- firebase/php-jwt: ^7.0
- illuminate/support: ^10.0|^11.0|^12.0|^13.0
README
Package ini digunakan untuk melakukan integrasi sistem Single Sign On M Mart.
Installation
Setelah melakukan pembuatan project laravel, silahkan gunakan langkah-langkah berikut untuk melakukan instalasi:
Via composer
Cdke Project Laravel- Install package
itmm/ssomenggunakan perintah:
composer require itmm/sso
- Daftarkan
SsoServiceProvider- Package ini mendukung Laravel package auto-discovery, sehingga pada Laravel 10 - 13 provider akan otomatis terdaftar tanpa langkah tambahan.
- Jika auto-discovery dinonaktifkan, daftarkan secara manual sesuai versi Laravel yang digunakan:
- Laravel 11 - 13 (
bootstrap/providers.php)return [ ..., Itmm\Sso\SsoServiceProvider::class, ]; - Laravel 10 ke bawah (
config/app.php)'providers' => [ ..., Itmm\Sso\SsoServiceProvider::class, ]
- Laravel 11 - 13 (
- Jalankan perintah berikut pada command line
composer dump-autoload
atau
composer du
- Publish component package
itmm/ssomenggunakan perintah:
php artisan vendor:publish --tag=sso-components --force
- Daftarkan middleware
VerifySsodanAuthenticatedSsosesuai versi Laravel yang digunakan:- Laravel 11 - 13 (
bootstrap/app.php)->withMiddleware(function (Middleware $middleware) { $middleware->alias([ 'verified.sso' => \App\Http\Middleware\VerifySso::class, 'authenticated.sso' => \App\Http\Middleware\AuthenticatedSso::class, ]); }) - Laravel 10 ke bawah (
app/Http/Kernel.php)protected $routeMiddleware = [ ... 'verified.sso' => \App\Http\Middleware\VerifySso::class, 'authenticated.sso' => \App\Http\Middleware\AuthenticatedSso::class, ];
- Laravel 11 - 13 (
SSO APP(Optional) Jalankan perintah berikut pada command line jika belum membuat keys passport pada SSO APP
php artisan passport:keys
SSO APPJalankan perintah berikut pada command line untuk membuat client
php artisan passport:client
SSO APPIkuti intruksi berikut saat menjalakan command line step ke 7
User Id: # Bisa di skip dengan tekan "Enter" langsung
Name: [nama-aplikasi] # Contoh: M Mart Application
Redirect Request: [http:// or https://][url-aplikasi]/callback # Contoh: https://application.m-mart.co.id/callback
SSO APPSetelah mengikuti intruksi tersebut akan munculclient iddanclient secretseperti dibawah. Simpanclient iddanclient secretuntuk digunakan pada.envfile pada step ke 12
New client created successfully.
Client ID: 1
Client secret: ********************
SSO APPPerbarui data client yang baru saja di buat pada database. Perbarui pada kolomapp_idmenjadi id dari aplikasi anda pada SSOSSO APPPastikan tipe login dari aplikasi sudah diperbarui ke menggunakan passport- Pada file
.envtambahkan beberapa environment berikut yang berisikan credential SSO
SSO_URL=[sso-url] # Contoh: https://sso.m-mart.co.id
SSO_API_URL=[sso-api-url] # Contoh: https://sso.m-mart.co.id
SSO_CLIENT_ID=[passport-client-id]
SSO_CLIENT_SECRET=[passport-client-secret]
- Pada file
.envtambahkan beberapa environment berikut yang berisikan credential Aplikasi
APP_ID=[app-id-dari-sso]
APP_CALLBACK_URL=[app-callback-url] # Contoh: https://application.m-mart.co.id/callback
APP_ROUTE_HOME_NAME=[home-route-name] # Contoh: home
- Jalankan script berikut untuk menyegarkan cache pada aplikasi
php artisan optimize:clear