Authentication · Kimlik doğrulama
Schemes, challenge ve .NET middleware sırası
Authenticate, Challenge ve Forbid sonucunun HTTP’ye dönüşmesi.
Kavramı anlayalım
Scheme bir doğrulama handler’ının adını ve davranışını tanımlar. Aynı uygulamada cookie ile web oturumu, Bearer ile API erişimi bulunabilir. Default scheme ve policy’de seçilen scheme farklı olabilir. Hangi endpoint’in hangi credential’ı kabul ettiği açık olsun; kullanıcı tarafından seçilen query alanıyla scheme değiştirme.
Authenticate kanıtı inceler. Challenge kullanıcının uygun kanıt sunmasını ister: bearer için sıklıkla 401 ve WWW-Authenticate, cookie tabanlı web akışında giriş sayfasına yönlendirme olabilir. Forbid erişimi reddeder; bearer için genelde 403, cookie handler’da access-denied yönlendirmesi olabilir. .NET 8 API’de yanlış cookie yönlendirmesi frontend’e HTML/302 getirebilir. API’ye uygun status davranışını yapılandır; scheme farkını bilmeden tüm yanıtlar aynı sanma.
Middleware sırası kimlik bilgisinin yetki değerlendirmesinden önce kurulmasını sağlamalıdır. Endpoint routing ve CORS bağlamıyla birlikte UseAuthentication, UseAuthorization sırasını kullan. AddAuthentication yalnız servisleri kaydeder; pipeline’ın tamamını tek başına kurmaz. Default ve fallback policy, AllowAnonymous ve endpoint gereksinimleri birlikte test edilmelidir. Bu örnek mevcut projendeki güvenlik yapılandırmasını otomatik değiştirmez; kendi test uygulamanda doğrulaman gereken desenleri gösterir.
.NET API’de 302/HTML neden geliyor sorusunu çözerken.
AddAuthentication çağırınca kaynakların otomatik korunduğunu sanmak.
Aynı konu. Üç farklı derinlik.
app.UseRouting();
app.UseCors("Frontend");
app.UseAuthentication();
app.UseAuthorization();Temsili sıralama; handler ve policy servis kayıtları ayrıca gerekir.
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.
Önce kendin dene.
API’den JSON beklerken login HTML’i dönüyor. İlk nereyi kontrol edersin?
Çözümü ve açıklamasını göster
Inspect selected authentication scheme and cookie redirect events.Cookie challenge yönlendirmesi ve API için status davranışını kontrol et.