Licence
Mengaktifkan lisensi instalasi On Premise dari Console — tempel kode aktivasi, lisensi langsung berlaku tanpa mengedit .env dan tanpa restart.
Menu Licence di Console dipakai untuk mengaktifkan lisensi instalasi On Premise. Administrator cukup menempelkan kode aktivasi yang dikirim tim AlurKerja (bentuknya AK-XXXX-XXXX-XXXX). Kode itu diperiksa, ditukar dengan lisensi, lalu langsung berlaku — tanpa mengedit .env dan tanpa me-restart service.
Lisensi berlaku untuk seluruh instalasi, bukan per workspace.
Sebelum mulai
| Kebutuhan | Keterangan |
|---|---|
| Versi AlurKerja | 2026.08.3.1 atau lebih baru. Versi sebelumnya hanya bisa memasang lisensi lewat .env (lihat Alternatif). |
Environment tenant-management-service | LICENSE_ENABLED=true, LICENSE_KEY kosong, LICENSE_SERVER_URL=https://be-admin.alurkerja.com (tanpa / di akhir), dan STATE_FILE_PATH (bawaan /var/lib/alurkerja/state.json) berada di volume persisten. |
| Akses jaringan | Server boleh membuka koneksi HTTPS keluar ke LICENSE_SERVER_URL, karena kode aktivasi ditukar ke sana. Tidak ada port masuk yang perlu dibuka. |
| Akun | Akun Keycloak dengan role platform_owner (role realm maupun role client). Role Owner di sebuah workspace tidak cukup untuk membuka Console. |
| Kode aktivasi | Dikirim tim AlurKerja lewat email. Berlaku 14 hari sejak diterbitkan dan hanya bisa dipakai sekali. |
Aplikasi terkunci sampai lisensi diaktifkan
Begitu LICENSE_ENABLED=true berlaku, seluruh aplikasi — kecuali Console — menampilkan halaman Not licensed yet sampai lisensi diaktifkan. Siapkan kode aktivasi lebih dulu, lalu aktifkan segera setelah tenant-management-service di-restart dengan environment baru. Mengubah environment ini memerlukan satu kali restart tenant-management-service; aktivasinya sendiri tidak.
Mengaktifkan lisensi
-
Login dengan akun ber-role
platform_owner, lalu bukahttps://<domain-aplikasi>/admin. Dari halaman Not licensed yet, tombol Activate this installation membawa ke tempat yang sama. -
Pilih menu Licence di sidebar Console. Bagian Current state menunjukkan status Not activated yet.
-
Tempel kode aktivasi pada kolom di kartu Activate, lalu klik Activate. Kolom yang sama juga menerima license key penuh (JWT), jadi tidak perlu tahu jenis mana yang diterima.
-
Bila berhasil, muncul pesan Licence activated — plan … It is in force now; no restart needed. Current state berubah menjadi Active, lengkap dengan Licence source Activated on this screen, nama paket, dan tanggal kedaluwarsa.
Pengguna yang masih melihat Not licensed yet cukup memuat ulang halaman.
Kode yang ditolak tidak disimpan. Alasannya tampil di bawah kolom — penyebab dan solusinya ada di Troubleshooting.
Status lisensi
| Status | Artinya |
|---|---|
| Active | Lisensi berlaku normal. |
| Active — in grace period | Lisensi masih berlaku dalam masa tenggang; aplikasi tetap berjalan dengan banner peringatan. Hubungi tim AlurKerja. |
| Restricted (read-only) | Aplikasi hanya bisa dibaca; data tidak bisa diubah. |
| Suspended, Revoked, Expired | Aplikasi terblokir kecuali Console. Aktifkan lisensi pengganti dari menu Licence. |
| Not activated yet | Belum ada lisensi; aplikasi terkunci kecuali Console. |
| Licensing switched off | LICENSE_ENABLED tidak true dan LICENSE_KEY kosong — instalasi ini tidak menerapkan lisensi, jadi tidak ada yang perlu diaktifkan. |
Licence source menunjukkan asal lisensi: Activated on this screen (dari menu ini), Server configuration (.env) (dari LICENSE_KEY), atau None.
Mengganti lisensi
Setelah lisensi aktif, kartu Activate berganti nama menjadi Replace the licence. Kartu ini dipakai untuk perpanjangan atau upgrade paket.
Tempel kode baru lalu klik Activate. Karena lisensi lama sedang berjalan, lisensi baru hanya disimpan dan layar menampilkan Licence stored, but this installation is already running an earlier licence. It will take effect after the next restart. Lisensi lama tetap berlaku — pengguna tidak terganggu — sampai tenant-management-service di-restart pada waktu yang disepakati.
Deactivate bukan untuk perpanjangan
Deactivate menghapus lisensi tersimpan dan seketika mengembalikan instalasi ke status belum aktif: seluruh pengguna langsung terkunci sampai lisensi ditempel lagi. Kode aktivasi yang sudah pernah dipakai tidak bisa ditukar ulang, jadi siapkan kode baru atau license key penuh sebelum menekannya. Untuk perpanjangan, pakai Replace the licence.
Verifikasi dari server
Dari dalam jaringan instalasi:
curl -s http://tenant-management-service:<API_PORT>/api/v1/tenant/public/license-service/status
curl -s http://tenant-management-service:<API_PORT>/api/v1/tenant/public/license-service/quotaEndpoint ini publik (tanpa JWT dan tanpa header x-active-tenant) dan juga bisa dipanggil lewat prefix nginx /api/v1/tenant/.
statusmenjawab{"status":"ACTIVE","is_read_only":false,"is_blocked":false, …}.quotamenjawab kuota workspace sesuai kontrak, bukannull.
ACTIVE saja bukan bukti
Pada instalasi yang tidak menerapkan lisensi sama sekali, endpoint status tetap menjawab ACTIVE. Pastikan juga Licence source di Console bukan None dan quota tidak null.
Alternatif: lisensi lewat .env
Untuk instalasi yang tidak bisa membuka HTTPS keluar ke server lisensi, atau yang masih di bawah versi 2026.08.3.1, minta license key penuh (JWT) kepada tim AlurKerja:
- Versi 2026.08.3.1 ke atas — tempel license key penuh di menu Licence seperti kode biasa. Aktivasinya tidak memerlukan koneksi keluar.
- Lewat environment — isi
LICENSE_KEY=<license key penuh>padatenant-management-service, lalu restart service tersebut. Console akan menampilkan Licence source Server configuration (.env) dan tidak menawarkan form aktivasi, karena lisensi dari.envselalu menang atas lisensi yang disimpan di menu ini.
Troubleshooting
| Yang terlihat | Penyebab | Solusi |
|---|---|---|
| Console menampilkan halaman forbidden | Akun tidak punya role platform_owner | Tambahkan role platform_owner di Keycloak, lalu login ulang. |
| Licensing is switched off for this installation… | LICENSE_ENABLED belum true | Set LICENSE_ENABLED=true, lalu restart tenant-management-service. |
| This installation takes its licence from its server configuration (.env)… | LICENSE_KEY terisi. Periksa juga docker-compose.yml: sebagian compose menanam LICENSE_KEY langsung di bagian environment. | Kosongkan LICENSE_KEY lalu restart, atau ganti lisensinya lewat .env. |
| …activation code not found or already used | Kode salah ketik, atau sudah pernah dipakai | Periksa kembali kodenya; bila sudah terpakai, minta kode baru. |
| …activation code has expired | Kode berumur lebih dari 14 hari | Minta kode baru. |
| …could not reach the licence server… | Server tidak bisa membuka HTTPS keluar ke LICENSE_SERVER_URL | Buka akses keluar, atau pakai license key penuh. |
| …no licence server configured to exchange it with | LICENSE_SERVER_URL kosong | Isi LICENSE_SERVER_URL=https://be-admin.alurkerja.com, lalu restart. |
| …licence server returned status 405 | LICENSE_SERVER_URL mengarah ke admin.alurkerja.com (halaman web) | Ganti ke https://be-admin.alurkerja.com, lalu restart. |
| Licence stored, but … after the next restart. | Lisensi lain sedang berjalan | Restart tenant-management-service agar lisensi baru berlaku. |
Tim AlurKerja menerbitkan kode aktivasi dari License Admin → License Keys.
