2015-03-31 13 views
6

Sürgülü bir son kullanma ile OWIN Çerez Doğrulaması kullanarak bir ASP.NET MVC 5 uygulamasına sahibiz. İstemcide, bildirimler için her dakika bir web hizmetini inceleyen bir komut dosyası var. Bu web servis çağrısının, auth jetonu süresinin sona ermesine neden olmasını engellemek istiyoruz. Bunu yapmanın bir yolu var mı?Belirli URL'lerin sürenin dolmasını etkilemesini önlemek için OWIN Çerez Kimlik Doğrulaması'nı yapılandırabilir misiniz?

Bir OnValidateIdentity işleyicisinde kendi özel sürgülü son kullanma yöntemimi uygulamayı düşünmekteydim, ancak bu yönteme ExpiresUtc değerini ayarlamak, belirtecin son kullanma tarihini gerçekten etkiliyor gibi görünmüyor.

app.UseCookieAuthentication(new CookieAuthenticationOptions 
{ 
    Provider = new CookieAuthenticationProvider 
    { 
     OnValidateIdentity = cookieValidateIdentityContext => 
     { 
      cookieValidateIdentityContext.Properties.ExpiresUtc = DateTime.UtcNow.AddMinutes(-1); 
      return Task.FromResult(0); 
     } 
    }, 

    AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie, 
    AuthenticationMode = AuthenticationMode.Active, 
    LoginPath = new PathString("/"), 
    SlidingExpiration = false, 
    LogoutPath = new PathString("/Sessions/Logout") 
}); 

Herhangi bir yardım için teşekkür ederiz!

cevap

0

Bu test değil ama teoride çalışması gerekir:

app.Use("/path1", app2 => app2.UseCookieAuthentication(...)); 
app.Use("/path2", app3 => app3.UseCookieAuthentication(...)); 
app.UseCookieAuthentication(...); 

Use aramaların sipariş önemlidir. Owin hakkındaki güzel şey, alt yollar üzerindeki herhangi bir davranışı geçersiz kılma yeteneğidir.

+0

Bunu mu demek istediniz: app.Map ("/ path1", ...) '? – mlhDev

+0

Neredeyse aynı şey: https://stackoverflow.com/questions/35559763/owin-app-use-vs-app-run-vs-app-map – Brannon

İlgili konular