Just-in-Time Access: Cara Menerapkan Zero Standing Privilege di Perusahaan

Tak semua akses harus diberikan secara permanen. Misalnya, seorang IT admin hanya perlu mengakses database production selama beberapa menit untuk melakukan perbaikan. Jika aksesnya tersebut terus aktif setelah pekerjaan selesai, privilege yang tidak lagi dibutuhkan justru bisa menjadi celah keamanan.
Kondisi seperti ini membuat standing privilege menjadi celah yang bisa dimanfaatkan attacker. Untuk mengatasinya, Just-in-Time (JIT) Access menawarkan pendekatan yang berbeda. JIT access mengatur agar akses privileged diberikan hanya saat dibutuhkan, untuk tugas tertentu, lalu dicabut kembali setelah selesai.
Apa Itu Just-in-Time Access?
Just-in-time (JIT) access adalah pendekatan kontrol akses yang memberikan privilege kepada user hanya ketika dibutuhkan, untuk aktivitas tertentu, dan dalam jangka waktu terbatas. Setelah tugas atau aktivitas selesai, privilege tersebut akan dicabut sehingga user tidak bisa mengakses lagi.
Pendekatan ini menerapkan prinsip least privilege dan mengurangi standing privilege, yaitu akses yang terus aktif meskipun sedang tidak digunakan. Dengan JIT access, user tidak punya privilege secara permanen dan hanya mendapatkannya ketika diperlukan dan disetujui.
JIT access juga memberikan visibiltas terhadap aktivitas privileged. Organisasi dapat mengetahui siapa yang mendapatkan akses, resource apa yang diakses, aktivitas yang dilakukan, serta berapa lama akses tersebut digunakan. Hal ini dapat membantu mengurangi risiko privilege creep sekaligus memudahkan proses audit.
Mengapa Organisasi Membutuhkan Just-in-Time Access?
Salah satu cara attacker menyusup ke dalam organisasi adalah dengan mengambil alih akun internal, lalu memanfaatkan hak akses yang dimiliki akun tersebut untuk masuk ke berbagai sistem.
Masalahnya, organisasi biasanya memiliki banyak hak akses, termasuk yang diberikan secara permanen. Jika akun tersebut jatuh ke tangan attacker, privilege yang dimilikinya dapat menjadi pintu masuk untuk serangan yang lebih besar.
Karena itu, hak akses perlu dibatasi sesuai kebutuhan. Just-in-time access dapat melakukan ini dengan memberikan privilege hanya untuk aktivitas tertentu dan dalam waktu yang terbatas.
Apa Saja Manfaat Just-in-Time Access?
JIT access memberikan organisasi berbagai manfaat berikut:
1. Memperkecil attack surface
Privilege yang hanya aktif selama sesi berlangsung membuat lebih sedikit akun memiliki akses privileged secara permanen. Jika kredensial berhasil dicuri, attacker juga memiliki lebih sedikit peluang untuk memanfaatkannya karena privilege tidak selalu tersedia.
2. Memperjelas audit trail
Setiap akses diberikan untuk tugas dan waktu tertentu, sehingga organisasi dapat mencatat siapa yang mendapatkan akses, resource yang diakses, kapan akses diberikan, dan berapa lama akses digunakan. Catatan ini membantu tim membedakan aktivitas normal dari aktivitas yang mencurigakan sekaligus mempermudah proses audit.
3. Membatasi dampak jika terjadi kompromi
Jika ada akun yang berhasil diambil alih attacker, akses tidak akan terbuka tanpa batas. Ini karena privilege yang dimiliki akun tersebut memiliki batas waktu dan dapat dicabut setelah tugas selesai. Ruang gerak attacker pun menjadi lebih terbatas dan potensi dampak serangan dapat dikurangi.
4. Meningkatkan efisiensi operasional
Just-in-time access biasanya dikelola menggunakan solusi Privileged Access Management (PAM). Solusi ini memiliki kapabilitas workflow dan approval yang dapat diotomatisasi, sehingga tim bisa mendapatkan akses tanpa harus menunggu admin memberikan aksesnya secara manual setiap kali. Tim pun tetap bisa bekerja dengan cepat tanpa harus mempertahankan privilege secara permanen.
5. Mempermudah compliance dan audit
JIT Access membantu organisasi menunjukkan bahwa akses ke resource privileged dikelola secara terkontrol. Catatan tentang siapa yang memiliki akses, apa yang diakses, kapan akses diberikan, dan berapa lama akses berlangsung merupakan dokumentasi yang dapat digunakan untuk mendukung kebutuhan compliance dan audit.
Apa Saja Jenis Just-in-Time Access?
Dalam praktiknya, organisasi dapat menerapkan JIT access melalui tiga pendekatan, yaitu:
1. Broker account
Broker account menggunakan jalur akses terkontrol untuk memberikan akses ke suatu resource selama waktu yang telah ditentukan. Setelah periode akses berakhir, akses tersebut akan dicabut.
Kredensial akun bersama atau akun privileged biasanya disimpan dan diamankan di vault terpusat. Ketika ada user yang membutuhkan akses, mereka dapat melakukan check out kredensial melalui solusi PAM untuk jangka waktu tertentu.
Lalu ketika pekerjaannya sudah selesai dan kredensial dikembalikan, password dapat dirotasi secara otomatis sebelum digunakan oleh user berikutnya. Pendekatan ini cocok untuk mengelola akun admin atau akun bersama yang digunakan oleh beberapa user tanpa harus membagikan kredensial secara langsung.
2. Ephemeral account
Ephemeral account adalah akun yang dibuat hanya ketika dibutuhkan untuk menjalankan aktivitas tertentu. Ketika aktivitas sudah selesai dilakukan, akun tersebut akan dihapus. Akunnya hanya dipakai sekali.
Pendekatan ini cocok untuk sistem dengan tingkat risiko tinggi dan kebutuhan audit yang ketat. Metode ini mengurangi risiko privilege creep dan penumpukan akun yang tidak lagi diperlukan.
3. Temporary elevation
Temporary elevation memungkinkan user memperoleh privilege yang lebih tinggi daripada yang mereka miliki, tetapi hanya untuk sementara waktu. Misalnya, admin atau tim DevOps membutuhkan akses lebih tinggi untuk melakukan maintenance atau update tertentu. Akses ini tidak perlu diberikan secara permanen, user bisa mengajukan akses melalui workflow request-and-approval.
Lalu, setelah permintaan akses disetujui, privilege dapat diberikan untuk waktu tertentu dan kemudian dicabut kembali.
Bagaimana Cara Kerja Just-in-Time Access?
Secara umum, JIT access bekerja dengan memberikan privilege secara terkontrol, memantau penggunaannya, lalu mencabutnya kembali setelah tidak dibutuhkan. Prosesnya meliputi:
1. Request Akses
User mengajukan permintaan akses ke resource tertentu, seperti database, server, atau cloud resource. Permintaan ini biasanya mencantumkan kebutuhan dan durasi akses.
2. Verifikasi dan Evaluasi Policy
Sistem kemudian memverifikasi identitas requester dan mengevaluasi permintaan berdasarkan kebijakan keamanan yang berlaku. Sistem juga mempertimbangkan kebutuhan dan durasi akses yang diminta requester. Lalu, sistem akan memverifikasi identitas requester melalui autentikasi, seperti MFA.
3. Persetujuan Akses
Request bisa saja disetujui atau ditolak berdasarkan kebijakan yang telah ditentukan. Akses berisiko rendah dapat disetujui secara otomatis, sementara akses yang lebih sensitif dapat memerlukan persetujuan administrator atau pemilik resource.
Persetujuan request ini biasanya menggunakan workflow yang sudah diotomatisasi, namun tetap melibatkan policy dari organisasi.
4. Pemberian Akses Sementara
Setelah disetujui, sistem akan memberikan privilege secara sementara sesuai durasi yang ditentukan. Akses dapat diberikan melalui temporary elevation, akun sementara, atau short-lived credentials.
Lalu ketika tugas selesai atau waktu akses berakhir, privilege akan dicabut secara otomatis sehingga tidak meninggalkan akses yang tidak lagi diperlukan.
5. Session Monitoring
Selama akses berlangsung, aktivitas privileged dapat dipantau dan dicatat. Log ini mencatat aktivitas seperti siapa yang mengakses resource, tindakan yang dilakukan, serta durasi sesi sehingga dapat digunakan untuk monitoring dan audit.
Contoh Penerapan Just-in-Time Access
Just-in-time access dapat diterapkan di berbagai lingkungan yang membutuhkan akses privileged secara sementara. Misalnya, tim DevOps perlu akses ke production server saat melakukan troubleshooting. Atau di sektor finance dan healthcare, JIT access dapat digunakan untuk memberikan akses sementara ke data atau sistem sensitif selama audit, pemeriksaan, atau kebutuhan operasional tertentu.
Dalam praktiknya, akses JIT dapat diberikan melalui approval manual atau otomatis. Misalnya administrator perlu melakukan maintenance pada database penting. Pertama, ia akan mengajukan akses melalui sistem PAM. Permintaan ini dapat disetujui oleh pihak yang lebih tinggi atau berdasarkan policy yang sudah ditentukan.
Setelah disetujui, administrator akan mendapatkan privilege selama 30 menit dan seluruh aktivitasnya dicatat. Setelah tugas selesai atau waktu berakhir, privilege akan dicabut secara otomatis sehingga tidak ada akses yang tertinggal.
Perbedaan JIT Access dan Istilah Terkait
JIT Access vs Access Control Konvensional
Access control konvensional umumnya memberikan hak akses berdasarkan role atau fungsi pekerjaan. Sifatnya statis, user bisa tetap memiliki akses ke sistem sensitif meskipun akses tersebut sudah jarang digunakan atau tidak lagi dibutuhkan. Tetapi, mekanisme ini dapat meningkatkan risiko penyalahgunaan privilege.
Sebaliknya, JIT access bersifat lebih dinamis. Akses diberikan tepat ketika dibutuhkan dan dicabut otomatis setelah tugas selesai atau waktu yang ditentukan berakhir.
JIT Access vs JIT Provisioning
JIT access dan JIT provisioning sama-sama membatasi akses atau resource agar hanya tersedia saat dibutuhkan, tetapi keduanya memiliki fokus yang berbeda.
JIT provisioning berfokus pada pembuatan akun atau resource secara otomatis ketika diperlukan, sedangkan JIT access berfokus pada pemberian privilege sementara pada akun yang sudah ada.
JIT Access vs Just Enough Access
JIT access dan Just Enough Access (JEA) sama-sama menerapkan prinsip least privilege, tetapi fokusnya berbeda. Namun, keduanya dapat diterapkan secara bersamaan.
JIT access mengatur kapan dan berapa lama privilege diberikan, sementara just enough access mengatur seberapa besar akses yang dibutuhkan user untuk menyelesaikan tugasnya.
JIT Access vs JIT Privilege Elevation
JIT access dan JIT privilege elevation sama-sama memberikan akses secara sementara, tetapi intinya berbeda.
JIT access mengatur siapa yang mendapatkan akses dan kapan akses tersebut diberikan. Sementara itu, JIT privilege elevation berfokus pada peningkatan level privilege yang sudah dimiliki user.
JIT Access dan Zero Trust
JIT access tidak antonim dengan Zero Trust. Justru, JIT access mendukung penerapan Zero Trust yang berprinsip "Never Trust, Always Verify". Pendekatan ini membuat akses tidak diberikan hanya karena user sebelumnya sudah dipercaya. Setiap permintaan akses perlu diverifikasi dan dievaluasi berdasarkan kebijakan yang berlaku.
Best Practice Just-in-Time Access
Berikut ini adalah best practice cara menerapkan akses privilege just in time:
1. Mengaudit akses yang sudah ada
Organisasi bisa memulai dengan memetakan siapa yang memiliki akses privileged, resource apa yang dapat mereka akses, dan apakah privilege tersebut masih dibutuhkan.
Kemudian, organisasi dapat menentukan akun atau akses mana yang perlu diprioritaskan untuk penerapan JIT.
2. Menetapkan kebijakan akses yang jelas
Organisasi perlu menentukan siapa yang dapat meminta akses, resource apa yang dapat diakses, kondisi yang harus dipenuhi, serta berapa lama akses dapat diberikan.
Untuk akses yang lebih sensitif, organisasi dapat menerapkan persetujuan tambahan atau penilaian risiko sebelum akses diberikan.
3. Membatasi privilege dan aktivitas yang dapat dilakukan

JIT access sebaiknya tidak hanya membatasi kapan akses diberikan, tetapi juga apa yang dapat dilakukan user selama akses berlangsung. Misalnya, privilege dapat dibatasi berdasarkan role, aplikasi, command, atau aktivitas tertentu agar user hanya mendapatkan akses yang benar-benar dibutuhkan.
4. Mengotomatiskan provisioning dan pencabutan akses

Sebisa mungkin, proses pemberian dan pencabutan privilege dilakukan secara otomatis. Akses dapat diberikan ketika permintaan disetujui, sementara privilege atau kredensial dapat otomatis dinonaktifkan, dirotasi, atau dikembalikan ke kondisi semula setelah sesi berakhir.
Dengan begitu, organisasi tidak bergantung pada admin untuk mencabut akses secara manual.
5. Memantau dan mengevaluasi akses secara berkala

Catat setiap permintaan, persetujuan, aktivitas privileged, dan durasi akses untuk membangun audit trail yang jelas. Log ini dapat digunakan untuk mendeteksi aktivitas yang tidak biasa sekaligus mengevaluasi apakah kebijakan JIT yang diterapkan masih sesuai dengan kebutuhan organisasi.
Untuk memulai, organisasi tidak harus langsung menerapkan JIT ke seluruh lingkungan. Prioritaskan terlebih dahulu akun dan akses berisiko tinggi, seperti domain administrator, system administrator, akun DevOps, dan akses pihak ketiga. Setelah penerapannya berjalan dengan baik, cakupan JIT dapat diperluas secara bertahap.
Mengelola Just-in-Time Access dengan ManageEngine PAM360
Just-in-Time Access membantu organisasi mengurangi standing privilege dengan memberikan akses privileged hanya ketika dibutuhkan dan mencabutnya kembali setelah tugas selesai. Namun, menerapkan pendekatan ini secara konsisten membutuhkan kontrol yang terpusat, policy yang jelas, serta monitoring terhadap setiap aktivitas privileged.
ManageEngine PAM360 membantu organisasi mengelola privileged access dengan berbagai kapabilitas, mulai dari time-bound access, temporary privilege elevation, role-based access control, granular application dan command control, hingga automated credential rotation. Dengan pendekatan ini, organisasi dapat memberikan akses sesuai kebutuhan tanpa harus mempertahankan privilege secara permanen.
Pelajari lebih lanjut tentang bagaimana PAM360 dapat membantu organisasi menerapkan Just-in-Time Access dan mengelola privileged access dengan lebih aman melalui demo bersama tim kami.