全部产品
Search
文档中心

Identity as a Service:Tingkat Lanjut: SLO

更新时间:Jun 28, 2025

Single logout (SLO) mengacu pada logout global yang diinisiasi oleh sebuah aplikasi. Saat Anda masuk ke aplikasi menggunakan Single Sign-On (SSO) dari Identity as a Service (IDaaS) dan ingin keluar, Anda dapat memulai logout global di aplikasi untuk mengakhiri sesi aplikasi serta sesi logon utama IDaaS. IDaaS menerapkan SLO berdasarkan protokol OpenID Connect (OIDC). Saat ini, hanya aplikasi yang dikembangkan sendiri dan aplikasi OIDC yang mendukung SLO.

Catatan

SLO adalah sistem manajemen sesi untuk otentikasi federasi. Jika aplikasi Anda memerlukan otentikasi setiap kali masuk terlepas dari ada atau tidaknya sesi utama, Anda dapat mengonfigurasi parameter prompt di titik akhir otorisasi untuk meminta otentikasi ulang setiap kali masuk.

Panggil titik akhir SLO

Saat meminta logout, Anda perlu memulai permintaan pengalihan ke end session endpoint yang disediakan oleh IDaaS setelah menutup sesi aplikasi.

Administrator dapat memperoleh end session endpoint dengan langkah-langkah berikut: Klik nama aplikasi untuk masuk ke halaman application details, klik tab Sign-In, lalu subtab SSO, dan temukan end session endpoint di bagian Application Settings di bagian bawah halaman.

image.png

Mengarahkan ulang ke titik akhir ini memicu SLO. Namun, IDaaS tidak dapat memverifikasi validitas permintaan SLO dan akan meminta konfirmasi tindakan logoff.

Catatan

Proses logout manual ini dapat dilewati. Lihat petunjuk di bawah ini.

Jika sesi IDaaS aktif, IDaaS akan memberi tahu Anda tentang tindakan logout dan meminta konfirmasi, seperti yang ditunjukkan pada gambar berikut.

image.png

Jika Anda mengonfirmasi logout pada langkah sebelumnya, atau tidak ada sesi IDaaS yang aktif, pesan Logged out akan muncul, seperti yang ditunjukkan pada gambar berikut.

image.png

Pengalihan otomatis saat logout

Untuk dialihkan ke halaman aplikasi alih-alih menerima prompt "Logged out" setelah SLO selesai, Anda dapat mengonfigurasi bidang Logout Redirect URIs (post_logout_redirect_uris).

Administrator dapat mengklik Applications, mencari aplikasi ini dalam daftar aplikasi, lalu memilih Manage di kolom Tindakan yang sesuai dengan aplikasi. Pada halaman berikutnya, klik tab Sign-In dan subtab SSO. Selanjutnya, klik Tampilkan Pengaturan Lanjutan, temukan bidang Logout Redirect URIs, dan masukkan URI lengkap untuk pengalihan ke aplikasi.

Hingga lima logout redirect URIs dapat dikonfigurasi sebagai daftar putih. Nilai parameter post_logout_redirect_uris dalam permintaan logout yang dikirim ke titik akhir SLO harus termasuk dalam daftar putih agar pengalihan berlaku.

image.png

Setelah menyimpan konfigurasi, Anda dapat menyertakan parameter post_logout_redirect_uris dalam permintaan yang dikirim ke titik akhir SLO untuk menerapkan pengalihan otomatis saat logout.

Logout Otomatis

Untuk keluar dan dialihkan ke halaman aplikasi tanpa konfirmasi manual, sertakan parameter id_token_hint dalam permintaan yang dikirim ke titik akhir SLO setelah mengonfigurasi bidang Logout Redirect URIs.

Tabel berikut menjelaskan parameter yang didukung oleh titik akhir SLO.

Parameter

Diperlukan

Deskripsi

id_token_hint

Tidak

Parameter ini diperlukan untuk menerapkan logout otomatis. Ini memverifikasi apakah permintaan logout valid.

Lewati nilai id_token, yang sama dengan ID sesi dan dikeluarkan oleh IDaaS selama SSO.

Catatan

Jika berbeda dari ID sesi di IDaaS, konfirmasi keluar secara manual. Meskipun kedaluwarsa, jangan konfirmasi keluar secara manual karena nilai id_token sama dengan ID sesi.

Batas ini adalah desain keamanan dalam spesifikasi protokol OIDC untuk mencegah logout jahat.

post_logout_redirect_uris

Tidak

Parameter ini diperlukan saat Anda ingin menerapkan pengalihan otomatis saat logout.

Lewati URI HTTPS untuk dialihkan ke aplikasi saat logout. URI ini harus dikonfigurasi sebelumnya di bidang Logout Redirect URIs pada halaman manajemen aplikasi IDaaS.

state

Tidak

String acak. Jika pengalihan otomatis dikonfigurasi dan parameter ini dilewatkan ke IDaaS, parameter ini dikembalikan ke aplikasi sebagai parameter pengalihan.

Parameter ini digunakan untuk verifikasi keamanan.

Contoh berikut menunjukkan permintaan yang dikirim ke titik akhir SLO:

GET https://example.aliyunidaas.com/login/app/<application_id>/oauth2/logout
	?id_token_hint=${id_token}
	&post_logout_redirect_uri=${post_logout_redirect_uri}
	&state=${state} 

Diagram alir SLO

image

Catatan

Fitur SLO di IDaaS memiliki batasan berikut:

  • IDaaS hanya mendukung SLO berdasarkan OIDC.

  • IDaaS mendukung SLO yang diinisiasi hanya oleh penyedia layanan (SP).

  • IDaaS hanya keluar dari aplikasi sesi logon utama IDaaS dan tidak keluar dari aplikasi lain yang sedang aktif. Dengan kata lain, SLO global tidak diimplementasikan.

Referensi