Mengakhiri sesi pengguna dengan pencabutan token - Amazon Cognito

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengakhiri sesi pengguna dengan pencabutan token

Anda dapat mencabut token penyegaran untuk pengguna menggunakan kumpulan pengguna API atau server otorisasi. Cabut titik akhir Ketika Anda mencabut token refresh, semua token akses yang sebelumnya dikeluarkan oleh token refresh menjadi tidak valid. Token refresh lainnya dikeluarkan untuk pengguna tidak terpengaruh.

catatan

JWTtoken mandiri dengan tanda tangan dan waktu kedaluwarsa yang ditetapkan saat token dibuat. Token yang dicabut tidak dapat digunakan dengan panggilan Amazon API Cognito apa pun yang memerlukan token. Namun, token yang dicabut akan tetap valid jika diverifikasi menggunakan JWT pustaka apa pun yang memverifikasi tanda tangan dan kedaluwarsa token.

Anda dapat mencabut token penyegaran untuk klien kumpulan pengguna dengan pencabutan token diaktifkan. Saat Anda membuat klien kolam pengguna baru, token pencabutan diaktifkan secara default.

Aktifkan pencabutan token

Sebelum Anda dapat mencabut token untuk klien kolam pengguna yang ada, Anda harus mengaktifkan pencabutan token. Anda dapat mengaktifkan pencabutan token untuk klien kumpulan pengguna yang ada menggunakan AWS CLI atau. AWS API Untuk melakukannya, panggil aws cognito-idp describe-user-pool-client CLI perintah atau DescribeUserPoolClient API operasi untuk mengambil pengaturan saat ini dari klien aplikasi Anda. Kemudian panggil aws cognito-idp update-user-pool-client CLI perintah atau UpdateUserPoolClient API operasi. Sertakan setelan saat ini dari klien aplikasi Anda dan setel EnableTokenRevocation parameternyatrue.

Saat Anda membuat klien kumpulan pengguna baru menggunakan AWS CLI pencabutan token AWS API,, atau, diaktifkan secara default. AWS Management Console

Setelah Anda mengaktifkan pencabutan token, klaim baru ditambahkan di Amazon JSON Cognito Web Tokens. Klaim origin_jti dan jti ditambahkan ke token akses dan ID. Klaim ini meningkatkan ukuran akses klien aplikasi dan token ID.

Untuk membuat atau memodifikasi klien aplikasi dengan pencabutan token diaktifkan, sertakan parameter berikut dalam permintaan CreateUserPoolClientatau UpdateUserPoolClientAPIAnda.

"EnableTokenRevocation": true

Cabut token

Anda dapat mencabut token penyegaran menggunakan RevokeTokenAPIpermintaan, misalnya dengan perintah. aws cognito-idp revoke-token CLI Anda juga dapat mencabut token menggunakan. Cabut titik akhir Titik akhir ini adalah tersedia setelah Anda menambahkan domain ke kolam pengguna Anda. Anda dapat menggunakan titik akhir pencabutan pada domain yang dihosting Amazon Cognito atau domain kustom Anda sendiri.

catatan

Permintaan Anda untuk mencabut token penyegaran harus menyertakan ID klien yang digunakan untuk mendapatkan token.

Berikut ini adalah isi dari RevokeToken API permintaan contoh.

{ "ClientId": "1example23456789", "ClientSecret": "abcdef123456789ghijklexample", "Token": "eyJjdHkiOiJKV1QiEXAMPLE" }

Berikut ini adalah contoh URL permintaan c ke /oauth2/revoke endpoint dari kumpulan pengguna dengan domain kustom.

curl --location 'auth.mydomain.com/oauth2/revoke' \ --header 'Content-Type: application/x-www-form-urlencoded' \ --header 'Authorization: Basic Base64Encode(client_id:client_secret)' \ --data-urlencode 'token=abcdef123456789ghijklexample' \ --data-urlencode 'client_id=1example23456789'

RevokeTokenOperasi dan /oauth2/revoke titik akhir tidak memerlukan otorisasi tambahan kecuali klien aplikasi Anda memiliki rahasia klien.