Csrf Token
Token aracı: Uygulamada bulunan formların robot uygulamalar tarafından kullanılmasını engellemek için csrf token üreten ve tokeni kontrol eden araçtır.
Nesne Özellikleri (Metotlar)
Token aracı toplam 2 adet metoda sahiptir. Tüm metotlar static olarak tanımlanmıştır.
1. makeToken
Token oluşturmaya yarayan metottur. Geriye String veri döndürür. Uygulamaya giriş yapan her kullanıcıya özel 24 saat geçerli bir token oluşturur. Kullanıcının uygulama üzerinde yaptığı her işlemde bu token referans alınır.
Framework otomatik olarak her kullanıcı için token oluşturmaktadır. Ek olarak yeniden oluşturulmasına gerek yoktur.
Örnek kod:
Csrf::makeToken();
Görünüm katmanından token değerine erişmek için Twig sistemine ek fonksiyon yazılmıştır. Örnek kod:
{ { token()|raw } }
Yukarıda ki kod çıktı olarak bir input elemanı oluşturur ve elemana token değerini gönderir.
<input type="hidden" name="token" value="eaf07d2a30a192c153f629ce43002b24" />
2. isTokenValid
Formdan POST metoduyla gönderilen token değeriyle oluşturulan token değerinin eşleşip eşleşmediğini kontrol eden metottur. Geriye Boolean veri döndürür.
Bu metodun kontrolcüler ve modeller içerisinden kullanılması önerilmektedir. Örnek kod:
if ($_POST) {
if (Csrf::isTokenValid() === true) {
echo "Token geçerli";
} else {
echo "Token geçersiz!";
}
}