Spring Boot Featured Images - Konsultan IT Bandung - Suhendra Yohana Putra

Spring Boot – Mengirim CSRF Token dari Postman

Latar Belakang

Setiap kali menguji EndPoint dengan perlindungan CSRF diaktifkan, kita harus secara manual mengambil token CSRF dari cookie dan mengaturnya di header permintaan X-XSRF-TOKEN. Jika kita tidak mengirim token CSRF, kita akan mendapatkan kesalahan 403 Forbidden. Dalam tutorial ini, kita akan melihat cara mengotomatiskan pengiriman token CSRF Token ke server saat menggunakan Postman khususnya pada Spring MVC.  

Setup Aplikasi

Disini kita tidak akan membahas cara mengaktifkan perlindungan CSRF di aplikasi Spring.

Seperti yang kita ketahui, kita dapat menemukan token CSRF di cookie klien, dan secara default, perlindungan CSRF diterapkan untuk kata kerja HTTP POST, PUT, dan DELETE.

Selain itu, untuk pengujian, kita akan menggunakan salah satu EndPoint yang menggunakan request POST.

				
					POST http://localhost:8080/transfer?accountNo=1234&amount=100
				
			

Postman

Pertama, kita akan menjalankan pengujian dengan Postman tanpa mempertimbangkan token CSRF. Setelah itu, kita akan menjalankan pengujian lain dengan mengirimkan token CSRF dan menyiapkan Postman untuk mengirimkannya secara otomatis.

Pengujian Tanpa Token

Buka aplikasi Postman dan buat 1 buat 1 buah POST request.

request - Konsultan IT Bandung - Suhendra Yohana Putra

Sekarang, kita jalankan permintaan tanpa mengirimkan token CSRF, dan kita akan mendapatkan response error 403 Forbidden:

forbidden - Konsultan IT Bandung - Suhendra Yohana Putra

Next, we’ll see how to fix that.

 

Setup Property Token (X-XSRF-TOKEN)

Di tab Header, tambahkan parameter baru bernama X-XSRF-TOKEN dan nilainya diatur ke xsrf-token. X-XSRF-TOKEN adalah header untuk CSRF, dan xsrf-token adalah variabel Environment yang akan kita definisikan setelahnya:

header - Konsultan IT Bandung - Suhendra Yohana Putra

Environment Variable xsrf-token

Sekarang mari kita pergi ke Environment di sisi kiri dan buat Environment baru bernama DEV:

env 300x291 1 - Konsultan IT Bandung - Suhendra Yohana Putra

Di sisi kanan, kita definisikan variabel environment xsrf-token, sementara kolom lainnya biarkan kosong:

env variable 1024x170 1 - Konsultan IT Bandung - Suhendra Yohana Putra

Mari kembali ke permintaan dan pilih Lingkungan DEV dari pojok kanan atas sehingga kita dapat menggunakan properti lingkungan yang kita tentukan:

dev - Konsultan IT Bandung - Suhendra Yohana Putra

Mari klik sekarang pada tab Tes. Kami akan menambahkan skrip berikut di sini:

tests - Konsultan IT Bandung - Suhendra Yohana Putra

Script

Script mengambil nilai cookie XSRF-TOKEN dan memberikannya ke environment xsrf-token. Sehingga, nilai apa pun untuk XSRF-TOKEN yang berasal dari server akan ditransfer ke properti header X-XSRF-TOKEN.

Pengujian

Sekarang jikat kita jalankan atau melakukan request, akan mendapatkan respons 200 OK:

result - Konsultan IT Bandung - Suhendra Yohana Putra

Kesimpulan

Pada artikel ini, kita sudah melihat cara pengujian EndPoint aplikasi yang mengaktifkan perlindungan CSRF.

Kita menggunakan klien Postman untuk mengotomatiskan pengiriman token CSRF setiap kali kami menjalankan permintaan baru ke setiap EndPoint. Itu lebih efisien karena kita tidak perlu mengambil token CSRF secara manual dan mengaturnya di header permintaan.

About suhendrayputra

Avatar of suhendrayputra
Konsultan IT Bandung, Freelance web developer Kota Bandung. Jasa Pembuatan Website dan Aplikasi Sistem Informasi. #java #aspnet #wordPress

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *