2011-03-23 18 views
6

Kerberos ve temel kimlik doğrulaması yapan bir web uygulaması var. Müşterinin neler yapabileceğini bilmiyorum. Yani her iki auth mekanizması 401 cevabı ile gönderilir.Yalnızca Anlaşma başarısız olduğunda Anlaşma yönteminden Temel'e nasıl geri dönülür

cevap başlık içerecektir

WWW-Authenticate: Negotiate 
WWW-Authenticate: Basic realm="MyREALM" 

Ama istemci başarısız pazarlık yalnızca temel kimlik doğrulama geri düşmek istiyorum.

  • (ya yanlış kimlik doğrulama verileri ile ya da bazı ile birlikte istemci yeniden isteği görüş:
    1. Sunucu WWW-Authenticate ile yanıt istemci isteği ben akış gibi olmalıdır istiyorum

      , bayrak, devam edemediğini gösterir)

    2. Sunucu yanıtı, WWW-Authenticate: Basic realm = "MYREALM" ile
    3. İstemci temel auth yapmaz.

    Bunu nasıl yapabilirim? Bunu yapmak için sunucu kodunu değiştirdim. Ancak, herhangi bir alanda bulunmayan tarayıcı (onun temel auth yapması gerekiyor), adım 2'den sonra yanıt vermiyor.

  • +1

    Evet, kullandığınız tarayıcı ve sunucu nedir? Tarayıcı, WWW-Authenticate: Negotiate ile 401 aldıktan sonra SPNEGO biletini eklemeyi bilmelidir. Tarayıcı, söz konusu SPNEGO biletinin nasıl ekleneceğini bilmiyorsa, hizmet tarafından iade edilen 401 sayfasını görüntüleyerek el sıkışmalarını durduracaktır. Oturumda tüm 401 yanıtlarını bir denetleyici üzerinden yönlendirerek ve kullanıcı oturumunda ** 401 ** ** ** WWW-Authenticate: Negotiate ** ile gönderildikleri gerçeğini izleyerek girişimde düşüş sağladım. Bu durumda giriş sayfasına yönlendiriyorum, aksi takdirde kutu standart 401 sayfasını görüntülüyorum. – diginoise

    cevap

    0

    Tarayıcınız nedir? Spesifik RFC chapter 4.6, tarayıcının sunulan en güçlü yetkiyi kullanması gerektiğini öngörür. Bunun için kimlik bilgilerini alamıyorsa tarayıcının yapması gerekenleri hatırlayamıyorum.

    İlgili konular