COMPUTER ENGINEER

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

Web ve protokol temelleri

Stateless HTTP ve oturumlar

Bağlantı, kullanıcı oturumu değildir.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

HTTP’nin stateless olması her isteğin anlamının önceki isteği varsaymadan değerlendirilebilmesini anlatır. Uygulama buna rağmen kullanıcı oturumu tutabilir. Cookie’de taşınan rastgele oturum kimliği, sunucudaki kullanıcı bağlamına bağlanabilir. Aynı TCP bağlantısını kullanmak aynı kullanıcı olmak anlamına gelmez.

Login sonrası her istekte yetki yeniden kontrol edilmelidir. Logout yalnız arayüzün kapanması değil, oturumun veya yenileme mekanizmasının geçersizleşmesidir. Dağıtık servislerde session storage, timeout, revocation ve cihaz yönetimi tasarlanır.

JWT sunucuyu bütün state ihtiyacından kurtarmaz; iptal, anahtar rotasyonu ve yetki değişikliği hâlâ problemdir. Session fixation’a karşı login’de oturum kimliği yenileme gibi kontroller gerekir. İstekle taşınan kimliği yetki kontrolüne bağlamadan güvenme.

NERESİNDE KULLANIRSIN?

Login tasarımı ve load balancing kararları için.

SIK YAPILAN HATA

Stateless ise kullanıcı takibi yapılamaz demek.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

HTTP / temsili örnek
GET /account HTTP/1.1
Host: example.test
Cookie: session=opaque-example

Her istek kimlik bağlamını taşır.

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.

Aynı bağlantı üzerinde başka kullanıcıya ait istek gelebilir mi?

Çözümü ve açıklamasını göster
Açıklamalı çözüm
Connection identity ≠ application identity

Evet; kullanıcı yetkisini bağlantı tekrar kullanımından çıkartma.