Derzeit und das funktioniert, ich tue das folgende Setup-Cookie-Authentifizierung in einer ASP-MVC-Core-2-App Identität:Asp Mvc Core 2 Identität nicht Cookie-Namen einstellen, wenn AddAuthentication() verwendet addCookie()
services.ConfigureApplicationCookie(options =>
{
options.ExpireTimeSpan = TimeSpan.FromDays(1);
options.SlidingExpiration = true;
options.LoginPath = "/Account/LogIn";
options.LogoutPath = "/Account/LogOff";
options.Cookie.Name = "MyCookieName";
options.AccessDeniedPath = "/Account/AccessDenied";
});
ich möchte JWT zu dieser App hinzuzufügen und entsprechend der Dokumentation here, ich weiß, dass durch so etwas wie dies unter Verwendung von (basierend auf der gleichen Konfiguration wie oben):
services.AddAuthentication()
.AddCookie(options =>
{
options.ExpireTimeSpan = TimeSpan.FromDays(1);
options.SlidingExpiration = true;
options.LoginPath = "/Account/LogIn";
options.LogoutPath = "/Account/LogOff";
options.Cookie.Name = "MyCookieName";
options.AccessDeniedPath = "/Account/AccessDenied";
})
.AddJwtBearer(options =>
{ // options });
Wenn ich dies tun (auch wenn ich weg t Er AddJwtBearer
Kette) der Cookie wird nicht mehr den von mir angegebenen Namen gegeben. Der Login-Prozess funktioniert immer noch und ich bekomme ein Cookie, aber es wird der Standard-Asp-Cookie-Name genannt.
Ich nehme an, dass diese beiden Methoden zum Einstellen der Optionen die gleichen sind und die ConfigureApplicationCookie
ist nur eine Shortcut-Methode für die gleiche Sache.
Fehle ich etwas?
Danke, Brian
Sie müssen die Authentifizierungsschema Namen auf Ihrer 'AddAuthentication()' bereitzustellen. Versuchen Sie 'AddAuthentication (CookieAuthenticationDefaults.AuthenticationScheme)'? –
Danke David. Ich habe das getan, und ich bekomme das gleiche Ergebnis, der Cookie heißt ".AspNetCore.Identity.Application" und nicht "MyCookieName". – Brian
hmm komisch, weil ich das Authentifizierungsschema angeben musste. Wenn ich es dort leer lasse, bekam ich "No authenticationScheme wurde angegeben, und es wurde kein DefaultChallengeScheme gefunden" -Fehler. Haben Sie für den Cookie-Namen ".AspNetCore.Identity.Application" Identity Server 4 verwendet? –