MVC - autenticação mista - OWIN + autenticação do Windows
Eu preciso ter autenticação do Windows e autenticação owin (forms), mas não consigo fazê-lo funcionar.
Provavelmente, a melhor opção é ter dois sites com métodos de autenticação diferentes.
Eu encontrei um projeto que faz o que eu quero:MVC5-MixedAuth. Mas ele usa o IISExpress e não consigo fazê-lo funcionar com o IIS local.
O erro que ocorre é:
A filtragem de solicitações está configurada no servidor da Web para negar a solicitação, porque a sequência de consultas é muito longa.
Se eu remover todos os meusConfigureAuth () método dentroStartup.Auth.cs ele não lança o erro, mas não consigo fazer o login porque é necessário fazerCookieAuthentication.
Startup.Auth.cs:
public void ConfigureAuth(IAppBuilder app)
{
app.CreatePerOwinContext(dbEmployeePortal.Create);
app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create);
app.CreatePerOwinContext<ApplicationSignInManager>(ApplicationSignInManager.Create);
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login"),
Provider = new CookieAuthenticationProvider
{
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, UserMaster, int>
(
validateInterval: TimeSpan.FromMinutes(30),
regenerateIdentityCallback: (manager, user) => user.GenerateUserIdentityAsync(manager),
getUserIdCallback: (id) => (Int32.Parse(id.GetUserId()))
)
}
});
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
app.UseTwoFactorSignInCookie(DefaultAuthenticationTypes.TwoFactorCookie, TimeSpan.FromMinutes(5));
app.UseTwoFactorRememberBrowserCookie(DefaultAuthenticationTypes.TwoFactorRememberBrowserCookie);
}
Qualquer ideia?
ATUALIZAÇÃO 1
O erro
A filtragem de solicitações está configurada no servidor da Web para negar a solicitação, porque a sequência de consultas é muito longa.
aparece porque ocorre um loop de logon ao tentar acessar a página de logon.