Gesloten . Deze vraag is op meningen gebaseerd . Het accepteert momenteel geen antwoorden.

Reacties

  • Definieer " OK " en " Verouderd, " en leg uit " Don ' t zoals. "
  • Waarom is deze vraag gesloten !? Het OP vraagt of FormsAuthentication verouderd is in MVC 5 en of er ' een andere technologie is die deze vervangt. Dit is geen op meningen gebaseerde vraag zoals " Wat vindt u van het gebruik van FormsAuthentication in MVC 5 ".
  • @Tony_Henrich, ja ik begrijp niet ' waarom dit is gesloten. Gelukkig heeft Rowan voor de sluiting een bruikbaar antwoord gegeven. Gedeeltelijk op basis van zijn antwoord gebruikte ik FormsAuthentication nog steeds in mijn MVC5-project.
  • Ik begrijp niet ' waarom dit werd gesloten? Is deze vraag niet ' het doel van deze stack-uitwisseling, en stel je dit soort vragen niet in stackoverflow?
  • Ik don ' begrijp je niet waarom deze vraag werd gesloten? Mijn project migreert van asp.net 4.0 webformulieren met formulierauthenticatie naar asp.net 4.5 MVC5 en ik ' m onderzoek naar de beste aanpak met de huidige code. Gelieve ' niet toe te staan dat StackExchange slechter wordt gematigd dan Wikipedia.

Answer

Ja. FormsAuthentication is verouderd in MVC 5 en hoger.

Dat is tenminste het korte antwoord.

Het lange antwoord is dat pre-MVC 5 traditionele FormsAuthentication is nog steeds ok om te gebruiken. Het wordt echter geleidelijk afgebouwd ten gunste van alternatieve benaderingen zoals ASP.NET Identity .

In Visual Studio 2013 zijn de geleverde authenticatie-opties voor en MVC 5-applicatie als volgt:

VS2013 authenticatie-opties

In dit geval individuele gebruikersaccounts verwijst naar ASP.NET Identity .

Volgens Microsoft is het voormalige ASP.NET-lidmaatschap is vervangen door ASP.NET Identity,

[…] de voorbeeldtoepassing wordt geconfigureerd om ASP.NET-identiteit te gebruiken ( voorheen bekend als ASP.NET-lidmaatschap )

(nadruk op mij)

Microsoft stelt ook

Het nieuwe lidmaatschapssysteem is gebaseerd op OWIN in plaats van op de ASP.NET Forms Authentication-module.

Identity heeft FormsAuthentication dus niet “exact vervangen, maar eerder het Membership-systeem dat FormsAuthentication gebruikte. Maar goed ook, want volgens een vraag die ik in 2013 stelde, is Lidmaatschap nogal verwarrend .

Een type FormsAuthentication bestaat nog steeds, hoewel . Volgens Microsoft ,

ASP.NET biedt ook ondersteuning voor formulierauthenticatie via de FormsAuthenticationModule, die echter alleen applicaties kan ondersteunen die worden gehost op ASP.NET en geen claimondersteuning heeft. Hier is een ruwe lijst van functies: Functievergelijking

Dus als je “nog steeds FormsAuthentication wilt gebruiken, kijk dan eens naar Inzicht in OWIN Forms-authenticatie in MVC 5 .

Microsoft moedigt u aan om ASP.NET Identity te gebruiken. Dat hoeft natuurlijk niet. U kunt eenvoudig Geen authenticatie selecteren en het project zal niets voor u implementeren. Het is dan aan jou om aan je lidmaatschaps- / inlogbehoeften te voldoen .

Opmerkingen

  • Noch het OP, noch dit antwoord vermeldt authenticatie op maat. In mijn apps wil ik ' het ingebouwde lidmaatschap niet en gebruik dit niet controls en SQL Server-tabellen, maar authenticeer in plaats daarvan een gebruiker met behulp van mijn code en gebruikerstabel. Na authenticatie gebruik ik FormsAuthentication om de auth-cookie te maken en in te stellen. Ik gebruik ' geen ASP .NET Identity, maar ik hoop dat het dit scenario ook ondersteunt.
  • @Tony_Henrich, " authenticeer een gebruiker met behulp van mijn code en gebruikerstabel. Eenmaal geauthenticeerd, gebruik ik FormsAuthentication om de auth-cookie te maken en in te stellen " Dat ' is precies wat ik uiteindelijk doe. Ik hou echt niet van ASP.NET-lidmaatschapscontroles en de SQL Server-tabellen. Voor het " ASP.NET-lidmaatschap " -systeem weet ik dat het zeker verouderd is en niet meer gebruikt zou moeten worden (sinds vele jaren geleden eigenlijk)
  • Een goed open source-project dat MVC5 en aangepaste formulierverificatie gebruikt: github.com/YodasMyDad/mvcforum

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *