Buat aturan validasi token API dengan mengonfigurasi kebijakan validasi JSON Web Token (JWT) dan menerapkannya pada API yang dikelola. ESA kemudian akan memvalidasi permintaan masuk terhadap token-token ini untuk mengamankan API bisnis Anda.
Konfigurasikan aturan token API
Di Konsol ESA, pergi ke Websites. Di kolom Website, klik situs web target.
Di panel navigasi kiri, pergi ke .
Di halaman API Security, klik tab API Rules, lalu klik Token Configuration.

Klik Add untuk menambahkan konfigurasi token.

Konfigurasikan parameter token sesuai kebutuhan, lalu klik OK:
Name: Masukkan nama kustom untuk token, seperti
JWT-Demo.Token Location: Pilih lokasi token dalam permintaan. Pilih Header atau Cookie, lalu masukkan kunci.
CatatanUntuk memeriksa token di lokasi berbeda, Anda dapat mengklik Or untuk membuat kondisi logika
OR. Anda dapat memeriksa hingga empat lokasi token secara bersamaan.Token Key: Masukkan kunci token secara manual atau unggah file JSON. Untuk informasi lebih lanjut tentang persyaratan kunci, lihat Detail Token.
CatatanJika Anda mengonfigurasi beberapa kunci, ESA menggunakan bidang
kiduntuk memilih kunci untuk validasi. Permintaan dianggap valid jika divalidasi oleh salah satu kunci.

Setelah Anda mengonfigurasi token, buat aturan API. Kembali ke tab API Rules dan klik Add Rule.

Konfigurasikan parameter validasi token sesuai kebutuhan:
Rule Name: Masukkan nama aturan, seperti
rule-jwt-demo.Validate API: Dari daftar drop-down, pilih hostname yang menyediakan API yang ingin Anda validasi. ESA akan secara otomatis menampilkan daftar API yang dikelola di bawah hostname tersebut. Pilih API target dari daftar.
Select Token Configuration: Pilih satu atau lebih token untuk divalidasi. Jika Anda memilih beberapa token, pilih salah satu opsi berikut:
Validate at least one: Permintaan harus cocok dengan setidaknya satu konfigurasi token yang dipilih. Jika tidak, permintaan ditandai sebagai tidak sesuai.
Validate all: Permintaan harus cocok dengan semua konfigurasi token yang dipilih. Jika tidak, permintaan ditandai sebagai tidak sesuai.
CatatanSecara default, permintaan ditandai sebagai tidak sesuai jika token hilang. Untuk mengubah perilaku ini, Anda dapat memilih Ignore dari daftar drop-down di kolom If No Token.
Action: Pilih tindakan untuk permintaan yang gagal validasi token:

Verifikasi hasil
Setelah Anda membuat aturan API, di panel navigasi kiri, pilih . Di halaman Event, gunakan filter untuk mengatur aturan perlindungan menjadi API Rule. Gulir ke bawah untuk melihat log mitigasi rinci di bagian Sampling Logs.
Detail Token
Validasi token saat ini hanya tersedia untuk JWT.
Deskripsi Bidang
Kunci publik harus dalam format JSON Web Key (JWK). Kunci publik JWK harus berisi bidang kid dan alg. Bidang-bidang tersebut dijelaskan sebagai berikut:
kty: Jenis kunci, sepertiECuntuk Elliptic Curve.use: Penggunaan yang dimaksudkan dari kunci publik, sepertisiguntuk tanda tangan digital.crv: Jenis kurva eliptik, sepertiP-256untuk kurva standar NIST P-256.kid: Pengenal kunci kustom, sepertiesa. JWK harus mencakup bidangkiduntuk memungkinkan pemilihan kunci. Klaim JWT dalam permintaan juga harus mencakup bidangkid. Bidang ini digunakan untuk rotasi kunci token.x: Koordinat x dari kunci publik kurva eliptik.y: Koordinat y dari kunci publik kurva eliptik.alg: Pengenal algoritma. Saat ini hanya mendukungES256, yaitu algoritma tanda tangan ECDSA dengan SHA-256.
Contoh
{
"kty": "EC",
"use": "sig",
"crv": "P-256",
"kid": "esa",
"x": "QG3VFVwUX4IatQvBy7sqBvvmticCZ-eX5-nbtGKBOfI",
"y": "A3PXCshn7XcG7Ivvd2K_DerW4LHAlIVKdqhrUnczTD0",
"alg": "ES256"
}