COMPUTER ENGINEER

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

Durum kodları · 1xx–5xx

401, 403, 404 ve 407: kimlik mi, yetki mi?

Authentication ile authorization ayrımını gerçek HTTP kararlarına bağla.

AnlaÖrneği inceleKendin uygula

Kavramı anlayalım

401 Unauthorized adı kafa karıştırır: bu yanıt çoğunlukla kimliğin henüz geçerli biçimde doğrulanamadığını anlatır. Eksik, hatalı veya süresi geçmiş credential buna neden olabilir. Origin server 401 üretirken en az bir uygun WWW-Authenticate challenge göndermelidir. Bearer doğrulayıcı, gerekiyorsa invalid_token gibi scheme parametrelerini kullanır; tüm token veya iç hata ayrıntılarını yanıta yazmaz.

403 Forbidden sunucunun isteği anladığı ama yerine getirmeyi reddettiği durumdur. Geçerli kimlik var fakat rol, policy, scope veya kaynağa erişim yetmiyorsa sıklıkla 403 uygundur. Tekrar giriş yapmak otomatik çözüm değildir. Sunucu, özel kaynağın varlığını gizlemek için 404 dönebilir; bunu kaynağa ve tehdit modeline göre tutarlı seç. 403 sadece “kullanıcı login olmuş” anlamına gelmez; farklı engelleme politikaları da olabilir.

407 Proxy Authentication Required origin API’den farklı olarak forward proxy’nin kimlik istediğini anlatır ve Proxy-Authenticate challenge gerekir. Corporate proxy ile API login akışını karıştırma. Frontend 401’de kontrollü oturum yenileme veya giriş akışı, 403’te izin açıklaması gösterebilir; sonsuz refresh döngüsü üretmemelidir. Kararı yalnız UI’da değil, API ve kaynak denetiminde uygula.

NERESİNDE KULLANIRSIN?

Oturum bitmesiyle izin yetersizliğini frontend’de doğru ayırırken.

SIK YAPILAN HATA

Her 403’te token yenilemek veya her 401’i “rolün yok” diye göstermek.

EZBERDEN KARARA

Bu istekte ne yapardın?

Cevabı seç; gerekçeyi oku. Yanlış yaptığın konunun dersine dön. Sonuç yalnız bu sorulardaki doğru cevap sayısıdır, uzmanlık veya güvenlik sertifikası değildir.

Soru 1/50/0 doğru

API’ye süresi geçmiş Bearer token gönderildi. Uygun yanıt hangisi?

Yanıtlar bu sayfa oturumunda kalır; okuma ilerlemen ayrıca tarayıcıda saklanır.

01 / UYGULAMA

Aynı konu. Üç farklı derinlik.

HTTP / temsili örnek
HTTP/1.1 401 Unauthorized
WWW-Authenticate: Bearer realm="api"

Credential yok veya geçersiz; uygun scheme duyurulur.

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.

Geçerli token var, ama kullanıcı başka müşterinin raporunu silmek istiyor. Yeni token sorunu çözer mi?

Çözümü ve açıklamasını göster
Açıklamalı çözüm
Deny: 403 (or consistent concealment policy: 404)

Hayır; ownership/tenant denetimi reddetmelidir. 401 kimlik hatasıyla aynı değildir.