M365Con 2027 – konferensi online gratis · 11–22 Jan 2027 · 120 sessions→ m365con.net

Blog · Mirko Peters

Pembaruan Token Senyap dijelaskan untuk Modern Authentication

By ·

Saat Anda membangun aplikasi web modern, terutama jenis single-page, tidak ada yang ingin masuk berulang kali. Pembaruan token senyap hadir untuk menjaga agar gangguan login yang menjengkelkan itu tidak terjadi, memastikan sesi Anda tetap aktif di balik layar. Caranya dengan diam-diam mengambil token baru sebelum token lama kedaluwarsa, sehingga pengguna hampir tidak menyadari adanya perubahan.

Automatically translated with AI from the original post. Read the English original

Cover: Stop OAuth Consent Attacks in Microsoft Entra ID

Saat Anda membangun aplikasi web modern, terutama jenis single-page, tidak ada yang ingin masuk berulang kali. Pembaruan token senyap hadir untuk menjaga agar gangguan login yang menjengkelkan itu tidak terjadi, memastikan sesi Anda tetap aktif di balik layar. Caranya dengan diam-diam mengambil token baru sebelum token lama kedaluwarsa, sehingga pengguna hampir tidak menyadari adanya perubahan.

Pendekatan ini menjadi sorotan utama di perusahaan yang mengandalkan Microsoft Entra ID (sebelumnya Azure AD) dan solusi identitas yang mengutamakan cloud. Pendekatan ini membuat hari kerja lebih lancar dan produktif bagi siapa pun yang membutuhkan akses aman, baik aplikasinya bagian dari Microsoft 365 maupun proyek Angular kustom.

Detail teknisnya dibahas di bagian-bagian berikutnya. Untuk saat ini, perlu diketahui bahwa pembaruan senyap sangat penting untuk menghadirkan pengalaman “langsung berfungsi” di dunia tempat keamanan dan kenyamanan pengguna harus saling bersaing.

Cara Kerja Alur Pembaruan Senyap untuk Menghindari Gangguan Autentikasi

Pernahkah Anda sedang memperbarui dokumen penting atau menjalankan laporan, lalu tiba-tiba sistem meminta Anda masuk lagi? Gangguan seperti ini membuat frustrasi, terutama pada aplikasi yang bergantung pada akses berkelanjutan. Alur pembaruan senyap dirancang untuk menghilangkan pengalaman yang mengganggu ini dengan membuat autentikasi berjalan mulus dan otomatis.

Di lingkungan perusahaan saat ini, misalnya Microsoft 365, Entra ID, atau alat bisnis yang Anda host sendiri, menjaga sesi yang stabil dan dapat diprediksi sangatlah penting. Pembaruan token senyap memberi pengguna rasa “selalu aktif”, di mana mekanisme autentikasi diam-diam menyegarkan token setiap kali token hampir kedaluwarsa. Hal ini tidak hanya membuat pengguna tetap fokus pada alurnya, tetapi juga secara signifikan mengurangi keluhan dukungan teknis yang terkait dengan batas waktu sesi.

Pembaruan senyap terpicu secara otomatis ketika token Anda saat ini hampir habis. Alih-alih meminta pengguna masuk lagi, aplikasi mencoba mengambil token baru di latar belakang. Mekanisme ini sangat penting dalam aplikasi single-page, karena penyegaran halaman dan jendela pop-up akan merusak alur kerja dan produktivitas.

Pembaruan senyap yang lancar bukan hanya soal kenyamanan pengguna. Pembaruan ini juga membantu menjaga keamanan dan pengelolaan sesi yang sesuai ketentuan tanpa menambah kelelahan akibat login. Pada bagian berikutnya, Anda akan melihat bagaimana security token service, protokol identitas, dan teknik browser di balik layar bekerja sama untuk mewujudkannya, terutama saat Entra ID dan standar web modern digunakan.

Peran Security Token Service dalam Pembaruan Senyap

Security Token Service (STS) adalah pahlawan tanpa tanda jasa dalam pembaruan token senyap. Setiap kali aplikasi mendeteksi bahwa token pengguna akan segera kedaluwarsa, aplikasi diam-diam menghubungi STS, seperti Microsoft Entra ID atau penyedia OpenID Connect lainnya, untuk meminta token baru tanpa interaksi pengguna.

Selama permintaan pembaruan senyap ini, STS memvalidasi sesi Anda saat ini dan menerbitkan token akses atau token ID baru, sesuai aturan protokol yang ketat. Keandalannya bergantung pada pengaturan CORS dan Content Security Policy (CSP) yang tepat, agar pembaruan berhasil di berbagai browser dan lingkungan. Hal ini sangat penting pada layanan seperti Entra ID, yang menerapkan langkah keamanan berbasis identitas secara ketat. Untuk mempelajari lebih lanjut tentang kerentanan OAuth berbasis persetujuan dan strategi pertahanannya di Entra ID, lihat panduan mendalam ini.

Menyiapkan Pembaruan Token Senyap di Aplikasi Angular

Saat Anda menghubungkan autentikasi modern ke aplikasi Angular, pembaruan token senyap bukan sekadar fitur tambahan, melainkan kebutuhan. SPA (single-page application) sangat bergantung pada akses yang mulus, jadi Anda perlu memastikan pengaturan autentikasi menjaga token tetap segar di balik layar tanpa hambatan.

Bagian ini menjelaskan apa artinya menyiapkan pembaruan token senyap di lingkungan Angular. Baik Anda membangun untuk alat internal maupun klien publik, konfigurasi yang tepat dapat menentukan apakah prosesnya berjalan lancar atau justru penuh masalah login yang terus-menerus. Alat seperti angular-auth-oidc-client telah membuat alur ini jauh lebih mudah diakses, sekaligus mendukung keamanan dan produktivitas.

Anda akan menemukan konteks tentang cara mengonfigurasi modul, menghubungkan callback URL, dan mengaktifkan strategi pembaruan senyap di latar belakang. Langkah-langkah ini sering terlewat, padahal justru menjadi penyebab masalah sesi yang ingin diatasi oleh silent renew. Pembahasan mendalam berikutnya akan membahas strategi konfigurasi secara langsung dan mengupas detail teknis pembaruan berbasis iframe, termasuk apa yang berhasil, apa yang gagal, dan alasannya.

Konfigurasi NgModule untuk Silent Renew yang Andal

Untuk aplikasi Angular, konfigurasi NgModule adalah titik awal pembaruan senyap yang andal. Anda perlu menentukan redirect URI dan URL callback silent renew yang tepat, dan memastikannya sesuai dengan yang terdaftar di Entra ID atau penyedia OpenID Connect Anda.

Parameter autentikasi, seperti client ID dan scope, harus disetel dengan mempertimbangkan kemudahan penggunaan sekaligus keamanan. Saat menggunakan Entra ID, selalu perhatikan persyaratan Conditional Access, karena ketidaksesuaian di sini dapat merusak alur pembaruan. Untuk wawasan lebih lanjut mengenai menjaga tata kelola identitas yang solid di lingkungan Microsoft, silakan simak episode podcast ini.

Alur Silent Renew di Angular Menggunakan Iframe dan Token

Angular memanfaatkan iframe tersembunyi sebagai mekanisme utama untuk pembaruan token secara senyap. Ketika token mendekati masa kedaluwarsa, aplikasi Angular menyisipkan iframe yang tidak terlihat dan memuat URL silent renew tertentu, yaitu URL yang telah terdaftar dan diizinkan oleh penyedia identitas, seperti Microsoft Entra ID.

Iframe ini melakukan autentikasi ulang secara diam-diam ke STS dengan mengirimkan cookie dan meminta token baru menggunakan konteks sesi pengguna yang sudah ada. Setelah pembaruan berhasil, token baru dikirim kembali ke aplikasi induk tanpa gangguan apa pun di layar. Hal ini membuat pengguna tetap bekerja tanpa terganggu dan tidak perlu menyadari semua mekanisme keamanan yang bekerja di balik layar.

Namun, pembatasan dari browser selalu menjadi ancaman. Kebijakan cookie SameSite, batasan penyimpanan lintas origin, atau Content Security Policy yang ketat terkadang dapat memblokir alur senyap ini. Dalam kondisi seperti itu, penting untuk memastikan konfigurasi Entra ID Anda sudah modern, yaitu dengan mengizinkan cookie pihak ketiga hanya jika benar-benar diperlukan, serta menyetel header CSP yang memungkinkan iframe berfungsi sebagaimana mestinya. Pengelolaan cookie sesi yang baik sangat membantu; pastikan cookie dikonfigurasi sesuai kebijakan same-origin untuk menghindari kegagalan silent renew dan menjaga agar SPA Angular Anda tetap berjalan lancar.

Manajemen siklus hidup token di Angular juga mendukung pembaruan yang aman. Sistem memeriksa validitas token pada setiap permintaan dan memulai silent renew hanya ketika benar-benar diperlukan, sehingga menyeimbangkan performa dengan keamanan. Jika Anda ingin silent renew berjalan mulus di berbagai browser, pengujian rutin di bawah kondisi jaringan dan kebijakan yang berbeda sangat diperlukan, terutama untuk penerapan di lingkungan perusahaan yang diatur ketat atau sangat memperhatikan keamanan.

Memahami Masa Berlaku Token, Kedaluwarsa, dan Strategi Pembaruan

Setiap token autentikasi memiliki tanggal kedaluwarsa. Anggap saja seperti sekotak susu: bedanya, yang dipertaruhkan adalah keamanan dan akses, bukan kopi Anda. Memahami kapan token kedaluwarsa dan cara menjaga sesi tetap aktif secara aman adalah fondasi untuk membangun aplikasi yang dapat dipercaya dan diandalkan pengguna.

Bagian ini memberikan gambaran umum tentang masa berlaku token di ekosistem Microsoft dan Entra ID. Token berumur pendek membatasi risiko jika token tersebut dicuri, tetapi mengharuskan Anda cermat dalam menerapkan strategi pembaruan. Sebaliknya, token berumur panjang memberikan pengalaman pengguna yang lebih mulus, tetapi dapat menjadi risiko jika tidak dikelola dengan ketat menggunakan kebijakan dan mekanisme pencabutan yang tepat.

Pembahasan berikutnya akan membahas aspek "berapa lama" dan "jenis apa" secara bertahap, dengan fokus pada masa kedaluwarsa default, cara menyesuaikan masa berlaku sesuai kebutuhan, serta alasan mengapa refresh token sering menjadi kunci untuk menjaga sesi pengguna tetap panjang dan aman. Tujuan keamanan dan kepatuhan membentuk pilihan-pilihan ini, dan pengelolaan token yang tepat dapat mencegah masalah sesi atau, lebih buruk lagi, membuka celah serangan.

Mengelola Masa Berlaku Token, Kedaluwarsa, dan Keamanan

Pengaturan masa berlaku token lebih dari sekadar angka; pengaturan ini secara langsung memengaruhi keseimbangan antara kenyamanan sesi dan keamanan. Di Microsoft 365 dan Entra ID, access token umumnya diatur kedaluwarsa dalam waktu satu jam secara default, meskipun nilai ini dapat disesuaikan melalui kebijakan. Semakin pendek masa berlaku, semakin kecil celah untuk penyalahgunaan jika token disusupi.

Masa berlaku token yang lebih panjang berarti pembaruan lebih jarang, tetapi bisa meningkatkan risiko jika pengguna meninggalkan perangkatnya atau sesi dibajak. Selalu sesuaikan masa berlaku token dengan profil risiko aplikasi Anda, dan terapkan pembaruan otomatis serta kontrol sesi yang kuat. Untuk melihat bagaimana kepercayaan kondisional dan sesi diterapkan dalam lingkungan perusahaan, Anda dapat merujuk pada panduan dari artikel ini tentang kepercayaan kebijakan Conditional Access.

Access Token dan Refresh Token dalam Praktik Pembaruan Senyap

Access token adalah bukti yang digunakan aplikasi untuk memastikan pengguna sudah terautentikasi, misalnya untuk membaca email, mengakses file, atau mengirim permintaan API. Token ini dirancang berumur pendek demi keamanan, sehingga pembaruan senyap menjadi sangat penting. Begitu access token hampir kedaluwarsa, aplikasi Anda perlu cara untuk mendapatkan token baru tanpa meminta pengguna masuk lagi.

Di sinilah refresh token berperan. Refresh token adalah kredensial khusus yang dapat disimpan aplikasi Anda dengan aman, sehingga aplikasi dapat meminta access token baru kepada security token service (seperti Entra ID) secara senyap, sesuai kebutuhan. Token ini membawa tanggung jawab yang lebih besar karena jika dicuri, penyerang dapat melakukan pembaruan berulang kali. Oleh karena itu, sangat penting untuk melindunginya agar tidak berada di JavaScript sisi klien atau bocor ke cache browser.

Dalam praktiknya, alur pembaruan senyap biasanya memeriksa access token saat ini, mendeteksi apakah token akan segera kedaluwarsa, lalu menggunakan refresh token untuk mengambil token baru di latar belakang. Proses ini, yang diatur oleh Entra ID atau platform identitas lain, memastikan pengguna tetap terautentikasi dan aman tanpa klik tambahan dan tanpa pop-up. Memahami cara penyerang dapat mengeksploitasi alur ini sangat penting; untuk detailnya, lihat ikhtisar serangan persetujuan ini yang membahas risiko persistensi dan konfigurasi OAuth yang defensif.

Cuplikan Kode dan Alat untuk Memecahkan Masalah Pembaruan Token Senyap

Membangun pembaruan token senyap itu satu hal; membuatnya berjalan di lingkungan produksi adalah hal lain. Aplikasi nyata berjalan di berbagai browser, perangkat, dan kondisi jaringan, sehingga muncul berbagai kasus tepi yang baru terlihat ketika pengguna menekan “refresh” atau membiarkan sesi menganggur terlalu lama.

Bagian ini adalah perangkat Anda untuk menghadapi hal-hal yang tidak terduga: contoh kode praktis untuk Angular dan JavaScript biasa, serta ulasan alat pengembang terbaik untuk melihat apa yang terjadi di balik layar. Ketika token gagal diperbarui, yang sering disebabkan oleh masalah CORS, cookie, atau URI, Anda memerlukan cara cepat untuk menangkap dan mendiagnosis masalah tersebut agar pengguna tidak dihadapkan pada permintaan masuk yang tidak terduga.

Bagian berikutnya berfokus pada pemecahan masalah secara langsung: kode yang dapat digunakan kembali untuk mengimplementasikan alur pembaruan senyap dan PKCE, alat untuk memeriksa cache browser, serta panduan untuk menganalisis lalu lintas jaringan dan siklus hidup token. Dengan sumber daya ini, Anda dapat membangun dan men-debug strategi pembaruan senyap dengan lebih percaya diri.

Contoh Cuplikan Kode untuk Pembaruan Senyap dan Alur PKCE

  1. Inisialisasi Pembaruan Senyap Angular:
  2. // Angular (using angular-auth-oidc-client) AuthModule.forRoot({ config: { authority: 'https://login.microsoftonline.com/{tenant}', redirectUrl: window.location.origin, clientId: 'your-app-client-id', scope: 'openid profile email api.read', responseType: 'code', silentRenew: true, useRefreshToken: true, silentRenewUrl: window.location.origin + '/silent-renew.html' } }); Cuplikan ini menyiapkan AuthModule Angular untuk pembaruan token senyap dengan mendefinisikan silentRenewUrl, authority, serta mengaktifkan pembaruan melalui iframe tersembunyi. Ganti placeholder dengan nilai asli Anda.
  3. JavaScript Biasa dengan Pembaruan Senyap dan PKCE:
  4. // Initialization const config = { authority: 'https://login.microsoftonline.com/{tenant}', client_id: 'your-app-client-id', redirect_uri: window.location.origin + '/callback.html', silent_redirect_uri: window.location.origin + '/silent-renew.html', response_type: 'code', scope: 'openid profile email', automaticSilentRenew: true, filterProtocolClaims: true }; Di sini kami mengatur pembaruan senyap berbasis PKCE, yang menggunakan code challenge dan verifier di balik layar. Pastikan silent_redirect_uri sudah terdaftar di Entra ID dan callback dapat memproses respons dari iframe yang tertanam.
  5. Penanganan Callback Iframe:
  6. // Handler silent-renew.html if (window.location.search.includes('code=')) { window.parent.postMessage({ type: 'oidc-silent-renew-complete' }, window.location.origin); } Handler ringan ini memberi tahu SPA ketika proses perpanjangan diam-diam (silent renew) selesai di dalam iframe tersembunyi, sehingga siklusnya tertutup dan token diganti tanpa terlihat oleh pengguna.

Alat Pengembang Esensial dan Teknik Pencarian Token Cache

Praktik Terbaik, Langkah Selanjutnya, dan Sumber Daya Komunitas untuk Manajemen Token yang Aman

Setelah penyiapan silent token renewal Anda berjalan, pekerjaan Anda belum selesai. Pemeliharaan, pemantauan, dan pembelajaran berkelanjutan sangat penting untuk menjaga sesi pengguna tetap aman dan operasi bisnis tetap lancar, terutama seiring berkembangnya platform identitas dan perilaku browser.

Bagian ini membantu Anda menempuh jalur perbaikan berkelanjutan. Autentikasi modern dan manajemen sesi berubah dengan cepat, sehingga tetap mengikuti wawasan komunitas, blog keamanan web, serta sumber daya Microsoft/Azure sangatlah penting. Memastikan implementasi Anda teruji di lapangan berarti terus memperhatikan kesalahan token, melacak gangguan pengguna, dan melakukan penyesuaian seiring berjalannya waktu.

Di dalamnya, Anda akan menemukan strategi cerdas untuk logging dan analitik, ide untuk terhubung dengan blog ahli dan platform pembelajaran, serta cara memberikan masukan kepada komunitas autentikasi yang lebih luas. Baik Anda mengelola deployment enterprise berskala besar maupun mengoptimalkan aplikasi startup, praktik terbaik dan sumber daya ini menjadi pagar pengaman Anda menuju keberhasilan. Untuk pembahasan lebih mendalam tentang tata kelola operasional di Azure, lihat diskusi terperinci ini atau pelajari praktik terbaik keamanan untuk lingkungan Microsoft 365 agar autentikasi Anda tetap tangguh dan ramah pengguna.

Langkah Tindakan untuk Pemantauan, Logging, dan Manajemen Token yang Aman

Cara Memberikan Masukan dan Menemukan Blog Komunitas, Arsip, dan Sumber Daya Meta

Microsoft Entra ID

Related articles

RSS