Panduan ini menjelaskan cara Super Admin atau operator deployment meninjau lisensi produk di Migdafa Smart School dan mengaktifkan instalasi saat environment memang membutuhkannya.
Sebelum mulai
- Pastikan deployment ini memang menggunakan mode lisensi
disabled,remote, atauoffline. - Gunakan akun Super Admin sebelum membuka workspace lisensi di dalam aplikasi.
- Untuk mode
remote, pastikan main app dan standalone license server sudah dikonfigurasi bersama. - Untuk mode
offline, siapkan signed payload yang berisidatadansignature. - Jangan melakukan revoke pada remote binding kecuali Anda memang ingin memblokir purchase code pada authority server.
Penting: environment lokal yang diaudit saat ini berjalan dengan licensing aktif tetapi mode-nya diset ke disabled. Dalam kondisi ini, tab lisensi tetap nyata dan bisa dipakai untuk pengecekan status, tetapi kontrol aktivasi dan deaktivasi memang sengaja tidak ditampilkan.
Jalur navigasi
Settings -> License
Langkah 1: Buka tab License di System Settings
Masuk ke Settings, lalu buka tab License di dalam workspace System Settings. Pada UI lokal saat ini, label tab masih tampil sebagai fallback bergaya translation-key, tetapi tab tersebut tetap membuka panel lisensi yang benar.
Langkah 2: Baca tiga kartu status terlebih dahulu
Bagian atas panel lisensi merangkum kondisi saat ini melalui tiga kartu:
- Mode menunjukkan apakah deployment menggunakan
disabled,remote, atauoffline - Status menunjukkan apakah lisensi saat ini diterima backend
- Binding menunjukkan domain yang sedang terikat atau bahwa belum ada aktivasi
Selalu baca tiga kartu ini sebelum melakukan perubahan. Kartu-kartu ini memberi tahu apakah instalasi memang butuh aktivasi, sudah aktif, atau memang sengaja berjalan tanpa enforcement lisensi.
Langkah 3: Hentikan di sini jika mode-nya disabled
Jika kartu Mode menampilkan disabled, maka environment tersebut tidak memerlukan aktivasi produk.
Yang akan terlihat pada kondisi ini:
- panel menampilkan pesan informasi bahwa lisensi tidak dibutuhkan
- aksi aktivasi dan deaktivasi tidak tersedia
- aplikasi tetap berjalan normal tanpa local binding
Gunakan kondisi ini untuk development lokal atau deployment lain yang memang sengaja menonaktifkan enforcement lisensi produk.
Langkah 4: Aktifkan instalasi saat mode-nya remote atau offline
Saat environment tidak berada pada mode disabled, panel yang sama akan menampilkan form aktivasi.
Gunakan input yang sesuai dengan mode aktif:
- pada mode
remote, masukkan purchase code - pada mode
offline, tempel payload JSON yang sudah ditandatangani
Lalu klik Activate License. Jika instalasi sudah memiliki lisensi, form yang sama berubah menjadi alur penggantian dengan label aksi Replace License.
Yang terjadi setelahnya:
- backend memverifikasi data lisensi yang dikirim
- record instalasi saat ini diperbarui
- panel status dimuat ulang dengan buyer, item, type, dan timestamp verifikasi
Langkah 5: Verifikasi detail aktivasi
Setelah aktivasi berhasil, tinjau bagian Current activation dan pastikan:
- buyer username
- nama item produk
- jenis lisensi
- waktu verifikasi terakhir
- jadwal pengecekan berikutnya
Jika environment memakai remote licensing, binding otoritatifnya juga harus cocok dengan domain dan identitas instalasi saat ini.
Langkah 6: Gunakan deactivate, release, dan revoke dengan hati-hati
Produk ini membedakan alur penggantian normal dari pemblokiran di level authority:
- gunakan Deactivate Local License bila Anda ingin melepas aktivasi saat ini dengan bersih sebelum mengaktifkan ulang instalasi ini atau instalasi lain
- gunakan remote release bila binding instalasi perlu dibebaskan tanpa melarang purchase code
- gunakan remote revoke hanya bila purchase code memang harus diblokir pada standalone authority server
Jika LICENSE_SERVER_ADMIN_TOKEN dikonfigurasi pada main app, panel in-app juga dapat menampilkan:
- detail remote binding saat ini
- lookup purchase code yang spesifik
- pencarian authority lintas instalasi
- aksi release dan revoke untuk binding hasil lookup
Langkah 7: Jalankan readiness check sebelum rollout produksi
Sebelum menganggap deployment remote licensing siap dipakai, jalankan readiness check bawaan pada kedua sisi.
Lokasi codebase license server:
/var/www/html/migdafa-smart-school-project/migdafa-license-server
Pemeriksaan yang direkomendasikan:
# Standalone license server
php /var/www/html/migdafa-smart-school-project/migdafa-license-server/scripts/check_remote_staging_readiness.php --base-url=https://licenses.your-domain.com
# Main Smart School app
php artisan licensing:check-remote-readiness --ping --require-admin
Pemeriksaan ini membantu memastikan key, token, storage, dan probe remote sudah benar sebelum operator bergantung pada alur aktivasi.
Verifikasi hasil
Gunakan checklist ini setelah meninjau atau mengaktifkan lisensi produk:
- pastikan mode sesuai dengan tujuan environment
- pastikan status sehat atau memang sengaja tidak diperlukan
- pastikan binding cocok dengan instalasi saat ini jika lisensi aktif
- pastikan informasi buyer dan item terisi setelah aktivasi
- pastikan lookup atau search remote bekerja sebelum menggunakan release atau revoke di produksi
Hasil yang diharapkan: deployment tetap memang tidak memerlukan lisensi pada mode disabled, atau menampilkan record aktivasi yang valid dan sesuai dengan instalasi saat ini.
Troubleshooting
| Masalah | Penyebab yang mungkin | Tindakan |
|---|---|---|
| Tab License tidak menampilkan form aktivasi | Environment berjalan dengan mode disabled, atau operator bukan Super Admin | Pastikan mode lisensi dan masuk dengan akun Super Admin |
| Panel menampilkan bahwa lisensi tidak diperlukan | Deployment ini memang sengaja berjalan tanpa enforcement | Perlakukan sebagai environment status-only dan jangan mengharapkan kontrol aktivasi |
| Aktivasi gagal setelah purchase code dikirim | Purchase code tidak valid atau verifikasi remote/offline belum benar | Periksa ulang code atau payload yang dikirim dan verifikasi konfigurasi app serta license server |
| Remote binding tools tidak muncul | Remote mode tidak aktif atau dukungan admin token belum ada | Pastikan LICENSING_MODE=remote dan konfigurasikan LICENSE_SERVER_ADMIN_TOKEN bila diperlukan |
/system/license atau /system/public-license langsung mengalihkan halaman | Aplikasi saat ini tidak sedang diblokir oleh masalah lisensi | Buka tab License normal di Settings; recovery route hanya aktif saat benar-benar ada blocker lisensi |