Proxy kimlik doğrulaması, bir proxy sunucusunun, herhangi bir trafiği iletmeden önce bir istemcinin onu kullanma iznine sahip olup olmadığını doğrulamak için gerçekleştirdiği kontrol işlemidir. İstemci, bir kullanıcı adı ve şifre gibi kimlik bilgileriyle veya onaylı bir IP adresinden bağlanarak kimliğini kanıtlar. Kontrol başarısız olursa, proxy isteği reddeder. HTTP üzerinden, kimlik bilgilerine ihtiyaç duyan bir proxy, 407 durum kodu ile yanıt verir.

Kullanıcı Adı/Şifre vs. IP Beyaz Listeleme

  • Kullanıcı adı/şifre kimlik doğrulaması, kimlik bilgilerini Proxy-Authorization başlığında gönderir, bu nedenle istemcinin IP adresine bağlı değildir.
  • IP beyaz listeleme, kimlik bilgileri olmadan belirli kaynak IP'leri veya alt ağları yetkilendirir, bu nedenle diğer IP'lerden gelen istekler reddedilir.

407 Zorluğu Nasıl Çalışır

  • Zorluk: Kimlik bilgilerine ihtiyaç duyan bir proxy, kimlik doğrulaması yapılmamış bir isteğe 407 Proxy Authentication Required ile yanıt verir. Yanıt, kullanılacak şemayı belirten bir Proxy-Authenticate başlığı içermelidir, örneğin Basic.
  • Yeniden Deneme: İstemci, kimlik bilgilerini taşıyan bir Proxy-Authorization başlığı ile isteği tekrarlar, örneğin Proxy-Authorization: Basic <credentials>.
  • 407 vs. 401: 407, 401 Yetkisiz gibi çalışır, ancak proxy'nin kimlik bilgilerine ihtiyaç duyduğunu, web sitesinin değil, belirtir.
  • Kapsam: Proxy-Authorization, bunu isteyen proxy ile sınırlıdır. Bir proxy zincirinde, kimlik bilgileri bekleyen ilk proxy başlığı tüketir.

Proxy Kimlik Bilgilerini Güvende Tutma

  • Temel şifreleme değildir: Temel şeması yalnızca username:password'i base64 ile kodlar. Base64 tersine çevrilebilir, bu nedenle bu, kimlik bilgilerini açık metin olarak göndermeye eşdeğerdir.
  • Şifreli bağlantıları tercih edin: MDN, kimlik doğrulaması kullanıldığında ve özellikle Temel ile birlikte HTTPS'yi önerir. curl gibi bazı istemciler, https:// proxy URL'si üzerinden proxy'ye TLS ile bağlanabilir.
  • Özel karakterleri kodlayın: curl, bir proxy dizesindeki kullanıcı adı ve şifreyi URL'den çözer, bu nedenle @ içeren bir şifre %40 olarak yazılmalı ve bir iki nokta üst üste %3a olarak belirtilmelidir.

İlgili Terimler