Commenti
- Definisci " OK " e " Obsoleto, " e spiega " Don ' t like. "
- Perché questa domanda è chiusa !? LOP chiede se FormsAuthentication è obsoleto in MVC 5 e se esiste ' unaltra tecnologia che lo sostituisce. Questa non è una domanda basata sulle opinioni come " Cosa ne pensi dellutilizzo di FormsAuthentication in MVC 5 ".
- @Tony_Henrich, sì, ' non capisco perché è chiuso. Fortunatamente Rowan ha fornito una risposta utile prima della chiusura. In parte basandomi sulla sua risposta, utilizzavo ancora FormsAuthentication nel mio progetto MVC5.
- Non ' capisco perché è stato chiuso? ' non è questa domanda lo scopo di questo scambio di stack e non fare questo tipo di domanda in stackoverflow?
- Non ' Non capisci perché questa domanda è stata chiusa? Il mio progetto sta migrando dai webform asp.net 4.0 con autenticazione del modulo ad asp.net 4.5 MVC5 e ' sto cercando lapproccio migliore con il codice corrente. Si prega di non ' consentire a StackExchange di moderare peggio di Wikipedia.
Rispondi
Sì. FormsAuthentication è obsoleta in MVC 5 e successivi.
Almeno, questa è la risposta breve.
La risposta lunga è quella pre-MVC 5 tradizionale FormsAuthentication può ancora essere utilizzato . Tuttavia, è stato gradualmente eliminato a favore di approcci alternativi come ASP.NET Identity .
In Visual Studio 2013, le opzioni di autenticazione fornite per e lapplicazione MVC 5 sono le seguenti:
In questo caso, account utente individuali si riferisce a ASP.NET Identity .
Secondo Microsoft, il precedente appartenenza ad ASP.NET è stato sostituito con ASP.NET Identity,
[…] lapplicazione di esempio sarà configurato per utilizzare ASP.NET Identity ( precedentemente noto come appartenenza ad ASP.NET )
(Enfasi mia)
Microsoft dichiara anche
Il nuovo sistema di appartenenza è basato su OWIN piuttosto che sul modulo di autenticazione dei moduli ASP.NET.
Quindi Identity non ha “sostituito esattamente FormsAuthentication, ma piuttosto ha sostituito il sistema di appartenenza che utilizzava FormsAuthentication. Anche una buona cosa, perché secondo una domanda che ho posto nel 2013, lappartenenza è piuttosto confusa .
Un tipo di FormsAuthentication esiste ancora sebbene . Secondo Microsoft ,
ASP.NET ha anche un supporto per lautenticazione dei moduli tramite il FormsAuthenticationModule, che, tuttavia, può supportare solo applicazioni ospitate su ASP.NET e non ha supporto per le attestazioni. Di seguito è riportato un elenco di confronto delle funzionalità approssimativo:
Quindi, se “vuoi ancora utilizzare FormsAuthentication, controlla Comprensione dellautenticazione con moduli OWIN in MVC 5 .
Quindi Microsoft incoraggia a utilizzare ASP.NET Identity. Non è necessario, ovviamente. Puoi semplicemente selezionare Nessuna autenticazione e il progetto non implementerà nulla per te. Spetta quindi a soddisfare le tue esigenze di iscrizione / accesso .
Commenti
- Né lOP né questa risposta menzionano lautenticazione del modulo personalizzato. Nelle mie app, non ' voglio e non utilizzo lappartenenza incorporata controlli e tabelle di SQL Server, ma autentico invece un utente utilizzando il mio codice e la tabella utente. Quindi, una volta autenticato, utilizzo FormsAuthentication per creare e impostare il cookie di autenticazione. Non ' uso ASP .NET Identity, ma spero che supporti anche questo scenario.
- @Tony_Henrich, " autentico un utente utilizzando il mio codice e la tabella degli utenti. Quindi, una volta autenticato, utilizzo FormsAuthentication per creare e impostare il cookie di autenticazione " Questo ' è esattamente quello che finisco per fare. Davvero non mi piacciono i controlli di appartenenza ASP.NET e le sue tabelle SQL Server. Per il sistema " ASP.NET membership " so che è definitivamente deprecato e dovrebbe essere smesso di essere utilizzato (da molti anni in realtà)
- Un buon progetto open source che utilizza MVC5 e lautenticazione del modulo personalizzato: github.com/YodasMyDad/mvcforum