COMPUTER ENGINEER

Örneklere git
Blog
HTTP / HTTPS / TLS6 dk çalışma
34/ 70

Authentication · Kimlik doğrulama

Cookie, Bearer ve BFF: browser token mimarisi

XSS, CSRF ve oturum taşıma tercihlerini dengeli değerlendir.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

Cookie tarayıcı tarafından uygun domain, path ve diğer kurallara göre otomatik gönderilir. HttpOnly JavaScript okumasını sınırlar; Secure HTTPS taşımasını ister; SameSite cross-site gönderime etki eder. Bunların hiçbiri tek başına “artık XSS veya CSRF yok” garantisi değildir. Kötü niyetli script okunamayan cookie ile bile kullanıcının adına aynı origin’e işlem yaptırabilir.

Authorization: Bearer header genellikle uygulama kodu tarafından eklenir. Token’a sahip olan onu kullanabilir; kısa ömür, audience, scope ve güvenli taşıma gerekir. localStorage’a koymak script erişimine açar; bellekte tutmak ise XSS riskini sıfırlamaz ve sayfa yenileme lifecycle’ı gerektirir. Query token’ları URL sızıntısı üretir. CORS ve credentials davranışı browser policy’sidir; token doğrulama yerine geçmez.

Backend for Frontend modelinde browser ile BFF arasında session cookie, BFF ile dış API arasında token bulunabilir. Bu, token’ın browser’a açılmasını azaltabilir ama CSRF koruması, session yönetimi ve proxy hedef kısıtları hâlâ gerekir. Her sisteme aynı mimariyi dayatma; SSR, mobil istemci, birden fazla domain ve identity provider akışlarını düşün. Kararı tehdit modeli, test ve operasyon gereksinimiyle ver.

NERESİNDE KULLANIRSIN?

Next.js ve API arasındaki oturum sınırını tasarlarken.

SIK YAPILAN HATA

HttpOnly varken XSS önemsiz veya localStorage her koşulda doğru demek.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

HTTP / temsili örnek
Set-Cookie: session=<opaque>; Secure; HttpOnly; SameSite=Lax; Path=/

Temsili flag’ler; cross-site gereksinim ve CSRF ayrıca değerlendirilir.

Bu sayfa dış sunuculara istek göndermez. HTTP mesajları temsili, HTTP/1.1 biçiminde okunabilir gösterimlerdir; HTTP/2 ve HTTP/3 wire formatı değildir. example.test ayrılmış öğretim alan adıdır. Komut ve JavaScript örneklerini yalnız kendi test ortamında uygula; gerçek token veya cookie yayımlama.

02 / SIRA SENDE

Önce kendin dene.

HttpOnly cookie kullanan sayfaya XSS girdi. Kullanıcı adına işlem mümkün mü?

Çözümü ve açıklamasını göster
Açıklamalı çözüm
Yes: script can initiate authenticated same-origin requests.

Evet. Cookie’yi okumakla cookie taşıyan istek yaptırmak farklıdır.