Dalam artikel ini, kita akan membahas cara logout dari aplikasi Domino Web yang menggunakan OpenID Connect (OIDC) untuk autentikasi. Kami juga akan melihat bagaimana kita dapat mengarahkan pengguna ke halaman lain setelah mereka logout.
Argument URL untuk Autentikasi
Sebelum kita masuk ke topik logout, mari kita bahas argument URL Domino yang digunakan untuk autentikasi. Ada dua argument utama yang dapat digunakan: Login
dan Logout
.
- Login: Argument ini digunakan untuk memaksa pengguna autentikasi sebelum mereka dapat melakukan tindakan yang memerlukan identitas pengguna. Contoh:
http://www.lotus-10.com/sales/leads.nsf?OpenDatabase&login
- Logout: Argument ini digunakan untuk logout pengguna dari aplikasi Domino. Dengan menggunakan argument ini, kita dapat mengarahkan pengguna ke halaman lain setelah mereka logout. Contoh:
http://www.lotus-10.com/sessions.nsf?logout
Logout dari Aplikasi Domino dengan OIDC
Saat menggunakan OIDC untuk autentikasi, kita memiliki beberapa pilihan untuk logout. Pada dasarnya, ada tiga jenis logout yang dapat digunakan:
- OpenID Connect Session Management 1.0: Logout ini digunakan untuk mengakhiri session pengguna di satu aplikasi.
- OpenID Connect Front-Channel Logout 1.0: Logout ini digunakan untuk mengakhiri session pengguna di semua aplikasi yang telah dipakai oleh pengguna melalui OpenID Provider (OP).
- OpenID Connect Back-Channel Logout 1.0: Logout ini digunakan untuk mengakhiri session pengguna di server Domino.
Domino versi 14 mendukung logout back-channel OIDC, sehingga kita dapat menggunakan argument Logout
dengan URL callback /names.nsf?OIDCLogin
atau /auth/protocol/oidc
.
Contoh kode yang dapat digunakan untuk logout OIDC menggunakan MS Entra (Azure AD) adalah sebagai berikut:
const config = {
auth: {
clientId: "your_app_id",
redirectUri: "your_app_redirect_uri", // defaults to application start page
postLogoutRedirectUri: "your_app_logout_redirect_uri",
},
};
const myMsal = new PublicClientApplication(config);
// you can select which account application should sign out
const logoutRequest = {
account: myMsal.getAccountByHomeId(homeAccountId),
};
myMsal.logoutRedirect(logoutRequest);
Kode di atas dapat ditemukan pada Microsoft Learn.
Dalam artikel ini, kita telah membahas cara logout dari aplikasi Domino Web yang menggunakan OIDC untuk autentikasi. Kita juga telah melihat bagaimana kita dapat mengarahkan pengguna ke halaman lain setelah mereka logout.