MVC3 ve form kimlik doğrulamasına güvenmeyen özel bir kimlik doğrulama yöntemini kullanan bir web sitemiz var - en azından anlatabildiğim kadarıyla. web.config biz Form kimlik doğrulaması olmadan AntiForgeryToken
<authentication mode="None"></authentication>
kurmak ve hiç kullanmadığımız/kodunda herhangi bir yere HttpContext.User ayarlayın.
if (String.Compare(filterContext.HttpContext.Request.HttpMethod, "post", true) == 0)
{
var forgery = new ValidateAntiForgeryTokenAttribute();
forgery.OnAuthorization(filterContext);
}
geçerli: Bu kod ile OnAuthorization içinde bütün anti-sahtecilik çek merkezileştirme
A required anti-forgery token was not supplied or was invalid
: @ Html.AntiForgeryToken() kullanarak bazı durumlarda kullanıcı bu hata mesajını aldığında sorunudur istisna nerede oluşur. Uygulama havuzu geri döndüğünde yeni anahtarların oluşturulmasını önlemek için defined a machineKey in web.config var. Bu sorunu çözmedi.
Daha sonra, istemcinin tarayıcısının çerez göndermediğini düşündük. Çerezleri kaydetmeye başladık ve bazı durumlarda RequestVerificationToken_Lw çerezi gönderildiğini, ancak Google Analytics tarafından yapılanlar gibi diğer çerezlerin de iyi bir şekilde gönderilmesine rağmen başkalarının olmadığını fark ettik. Tarayıcıda bir şeyler kurabilmeli ve başkalarını bırakabilir mi?
anti-forgery token depends on forms authentication gibi görünüyor. Bu dava mı? Form kimlik doğrulamasını güvenilir bir şekilde kullanmadığınız zamanlarda AntiForgeryToken kullanmaya devam etmenin herhangi bir yolu. Yukarıda anlattığım yöntemin vakaların% 90'ından fazlasını oluşturduğunu, ancak neden bazı insanlar için işe yaramadığını belirleyemediğimizi unutmayın.
Düşünceler?
Teşekkürler!
Kimlik doğrulama kullanmıyorsanız, sahtekarlık belirtileri neden önemlidir? Bir CSRF saldırısının amacı, bir saldırganın bir sitede kimliği doğrulanmış bir kullanıcının adına hareket etmesini sağlamaktır. Ve bir site kimlik doğrulaması kullanmadığında CSRF amaçsız görünüyor. –
Kimlik doğrulama kullanıyorum, sadece form kimlik doğrulaması kullanmıyorum. – pbz
Ne tür bir kimlik doğrulama kullanıyorsunuz? –