Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
Mencabut akses dan token refresh
Dalam beberapa kasus, aplikasi harus mencabut atau membatalkan token secara eksplisit, misalnya, saat pengguna keluar dari aplikasi yang mengaktifkan OAuth. Jika Anda mencabut token, token tersebut dapat disetujui kembali kapan saja sebelum kedaluwarsa.
Prosedur untuk pencabutan token ditentukan oleh spesifikasi Pencabutan Token OAuth 2.0.
Apigee Edge menyediakan operasi InvalidateToken yang memungkinkan Anda mengonfigurasi endpoint pencabutan token. Dengan memublikasikan URI endpoint ini, Anda memungkinkan developer aplikasi untuk membatalkan token yang dikeluarkan oleh Edge.
Berikut adalah contoh konfigurasi untuk kebijakan OAuthV2 dan operasi InvalidateToken. Di beberapa jika demikian, baik token akses maupun token pembaruan yang terkait akan dicabut. Secara teknis, mereka keduanya dicabut karena penanda berjenjang ditetapkan ke true. Untuk informasi selengkapnya tentang cara flag cascade berfungsi, lihat bagian atribut elemen Token di bawah ini.
<OAuthV2 name="InvalidateToken"> <Operation>InvalidateToken</Operation> <Tokens> <Token type="accesstoken" cascade="true">flow.variable</Token> </Tokens> </OAuthV2>
<Tokens>/<Token> elemen
Mengidentifikasi variabel alur yang menentukan token yang akan dicabut. Jika developer
diharapkan mengirimkan permintaan pencabutan menggunakan parameter kueri
bernama access_token
, misalnya, variabel flow yang benar akan
menjadi: request.queryparam.access_token
. Untuk mewajibkan token di header HTTP,
misalnya, tetapkan nilai ini ke request.header.access_token
.
Atribut
-
type
(wajib, string): Jenis token yang diidentifikasi oleh variabel yang ditentukan. Nilai yang didukung adalahaccesstoken
danrefreshtoken:
- Untuk mencabut token akses, tentukan jenis accesstoken.
- Untuk mencabut token akses dan refresh, tentukan jenis refreshtoken. Saat melihat
jenis refreshtoken, Edge mengasumsikan token tersebut adalah token refresh. Jika token refresh tersebut
ditemukan, maka data
tersebut akan dicabut. Jika token refresh tersebut tidak ditemukan, Edge akan memeriksa
lihat apakah itu token akses. Jika token akses ada, token tersebut akan dicabut.
Catatan: Jika Anda meneruskan token yang sudah tidak valid ke InvalidateToken kebijakan tersebut tidak menghasilkan kesalahan, meskipun Anda memang mengharapkannya. Seperti tidak berpengaruh.
-
cascade
(opsional, boolean, default: true) Penggunaan utama adalah mencabut token refresh tanpa mencabut token akses terkait. Pertimbangkan kasus berikut:- Cabut token refresh saja dan jangan cabut token akses yang terkait. Untuk melakukannya:
tetapkan <Token> ketik ke
refreshtoken
dan tetapkan cascade kefalse
. - Cabut token akses dan token refresh. Untuk melakukannya, tetapkan <Token>
ketik ke
accesstoken
. Nilai jenjang dapat berupatrue
( default) ataufalse
. Jika Anda menetapkannya ketrue
, maka akses token akses dan token refresh akan dicabut. Jika Anda menetapkannya kefalse
, akses tersebut token dicabut, dan token pembaruan tidak dapat digunakan. Lihat Catatan di bawah untuk informasi selengkapnya penjelasan. - Cabut token akses dan jangan cabut token refresh terkait. Bukan didukung. Lihat Catatan di bawah untuk penjelasan selengkapnya.
- Cabut token refresh saja dan jangan cabut token akses yang terkait. Untuk melakukannya:
tetapkan <Token> ketik ke
Catatan: Untuk alasan keamanan, jika Anda mencabut
token akses, maka token pembaruan
yang terkait juga akan dicabut. Oleh karena itu, Anda tidak dapat menggunakan
atribut {i>cascade<i} untuk mencabut token akses saja. Misalnya, jika Anda menetapkan <Token>
ketik ke accesstoken
, dan menetapkan cascade=false
, token akses akan dicabut
(sebagaimana yang diharapkan); token refresh yang terkait tidak dapat digunakan. File tersebut tidak dapat digunakan untuk memuat ulang
token akses yang dicabut. Kasus penggunaan utama untuk atribut {i>cascade<i} adalah saat Anda hanya
mencabut token refresh. Dalam hal ini, tetapkan <Token> ketik ke refreshtoken
,
dan setel cascade=false
. Token refresh akan dicabut, tetapi akses terkaitnya
token tersebut akan tetap valid (hingga masa berlakunya habis atau dicabut). Untuk informasi selengkapnya, lihat
Diskusi forum komunitas.
Menyetujui token akses dan refresh
Gunakan operasi ValidateToken untuk "menyetujui kembali" token yang dicabut. Artinya, ketika Anda menerapkan status token akses atau refresh yang ditargetkan berubah dari 'dicabut' dapat 'disetujui'. Anda dapat memvalidasi token yang dicabut yang belum kedaluwarsa.
<OAuthV2 name="ValidateToken"> <Operation>ValidateToken</Operation> <Tokens> <Token type="refreshtoken" cascade="true">flow.variable</Token> </Tokens> </OAuthV2>
<Tokens>/<Token> elemen
Mengidentifikasi variabel alur yang menentukan token yang akan divalidasi. Jika developer
diharapkan mengirimkan permintaan validasi menggunakan parameter kueri
bernama access_token
, misalnya, variabel flow yang benar akan
menjadi: request.queryparam.access_token
. Untuk mewajibkan token di header HTTP,
misalnya, tetapkan nilai ini ke request.header.access_token
.
Atribut
type
(wajib, string) Jenis token yang diidentifikasi oleh variabel yang ditentukan. Nilai yang didukung adalahaccesstoken
danrefreshtoken
.cascade
(opsional, boolean): Secara default, opsi ini disetel ketrue
, dan menyebabkan validasi disebarkan ke token terkait. Jadi, jika diterapkan ke token pembaruan, token akses terkait juga divalidasi. Jika diterapkan pada akses token tambahan, token refresh yang terkait juga divalidasi. Jika Anda menyetelnya kefalse
, maka hanya token akses atau refresh yang ditentukan yang divalidasi.