Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah ValidateAntiForgeryToken Mencegah Serangan CSRF dalam ASP.NET MVC 4?

Bagaimanakah ValidateAntiForgeryToken Mencegah Serangan CSRF dalam ASP.NET MVC 4?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-31 00:31:16623semak imbas

How Does ValidateAntiForgeryToken Prevent CSRF Attacks in ASP.NET MVC 4?

ValidateAntiForgeryToken: Tujuan, Penjelasan dan Contoh dalam MVC 4

Dalam aplikasi MVC, adalah penting untuk melindungi daripada penyerahan borang berniat jahat yang dikenali sebagai silang -pemalsuan permintaan tapak (CSRF). Atribut ValidateAntiForgeryToken memainkan peranan penting dalam menangani isu ini.

Tujuan ValidateAntiForgeryToken

Atribut ValidateAntiForgeryToken menjana token unik yang disimpan dalam kuki HTTP sahaja. Token yang sama ini juga ditambahkan pada borang sebagai input tersembunyi. Apabila borang diserahkan, ASP.NET MVC mengesahkan bahawa nilai kuki dan nilai token borang sepadan. Jika ia tidak sepadan, panggilan kaedah tindakan akan gagal, menghalang penyerahan yang tidak diingini.

Contoh Penggunaan dalam MVC 4

Untuk menggunakan atribut ValidateAntiForgeryToken, anda akan menggunakannya pada tindakan pengawal anda atau keseluruhan pengawal seperti berikut:

[ValidateAntiForgeryToken]
public class HomeController : Controller
{
    ...
}

Dalam borang yang diserahkan kepada tindakan pengawal, anda perlu memasukkan kod berikut:

@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()

    ... (form elements)
}

Dengan melaksanakan atribut ValidateAntiForgeryToken dan memanggil @Html.AntiForgeryToken(), anda boleh melindungi aplikasi MVC anda daripada serangan CSRF.

Atas ialah kandungan terperinci Bagaimanakah ValidateAntiForgeryToken Mencegah Serangan CSRF dalam ASP.NET MVC 4?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn