Kommentit
- Määritä " OK " ja " Vanhentunut, " ja selitä " Don ' t kuten. "
- Miksi tämä kysymys on suljettu !? OP kysyy, onko FormsAuthentication vanhentunut MVC 5: ssä ja onko ' muu tekniikka, joka korvaa sen. Tämä ei ole mielipidepohjainen kysymys, kuten " Mitä mieltä olet FormsAuthenticationin käytöstä MVC 5: ssä ".
- @Tony_Henrich, kyllä en ymmärrä miksi tämä on suljettu. ' Onneksi Rowan toimitti hyödyllisen vastauksen ennen sulkemista. Osittain hänen vastauksensa perusteella käytin edelleen FormsAuthenticationia MVC5-projektissani.
- En ymmärrä miksi tämä suljettiin? Eikö ' t tämä kysymys ole tämän pinonvaihdon tarkoitus , enkä kysy tällaista kysymystä pinonvaihdossa?
- En ' et ymmärrä, miksi tämä kysymys suljettiin? Projektini on siirtymässä asp.net 4.0 -verkkolomakkeista, joilla on lomaketodennus, asp.net 4.5 MVC5: een ja ' m etsin parasta lähestymistapaa nykyisellä koodilla. Älkää antako ' antaa StackExchangen kohentua huonommin kuin Wikipedia.
Vastaa
Kyllä. FormsAuthentication on vanhentunut MVC 5: ssä ja sitä uudemmissa versioissa.
Ainakin tämä on lyhyt vastaus.
Pitkä vastaus on, että pre-MVC 5 perinteinen FormsAuthentication on edelleen ok käyttää . Se kuitenkin poistetaan käytöstä vaihtoehtoisten lähestymistapojen, kuten ASP.NET-identiteetti .
Visual Studio 2013: ssa toimitetut todennusasetukset ja MVC 5 -sovellus ovat seuraavat:
Tässä tapauksessa yksittäiset käyttäjätilit viittaa ASP.NET-identiteettiin .
Microsoftin mukaan entinen ASP.NET-jäsenyys on korvattu nimellä ASP.NET Identity,
[…] esimerkkisovellus määritetty käyttämään ASP.NET Identity ( tunnettiin aiemmin nimellä ASP.NET-jäsenyys )
(Korostus minun)
Microsoft ilmoittaa myös
Uusi jäsenyysjärjestelmä perustuu OWIN: ään eikä ASP.NET Forms Authentication -moduuliin.
Joten Identiteetti ei korvannut täsmälleen FormsAuthenticationia, vaan pikemminkin korvasi Jäsenyysjärjestelmän, joka käytti FormsAuthenticationia. Hyvä asia myös, koska vuonna 2013 esittämäni kysymyksen mukaan jäsenyys on melko hämmentävää .
Tyyppi FormsAuthentication on edelleen olemassa, vaikka . Microsoftin mukaan ,
ASP.NET tukee myös lomakkeiden todennusta FormsAuthenticationModule, joka voi kuitenkin tukea vain ASP.NET: ssä isännöityjä sovelluksia eikä sillä ole vaatimusten tukea. Tässä on karkea ominaisuuksien vertailulista:
Joten jos haluat silti käyttää FormsAuthenticationia, tutustu OWIN Forms -todennuksen ymmärtämiseen MVC 5: ssä .
Joten Microsoft kannustaa sinua käyttämään ASP.NET Identity -ohjelmaa. Sinun ei tietenkään tarvitse. Voit yksinkertaisesti valita Ei todennusta , eikä projekti toteuta sinulle mitään. Sitten on sinun tehtäväsi täyttää jäsenyytesi / kirjautumistarpeesi .
Kommentit
- OP: ssa eikä tässä vastauksessa ei mainita mukautettua lomaketodennusta. En halua ' sovelluksissani sisäänrakennettua jäsenyyttä eikä käytä sitä ohjausobjektit ja SQL Server -taulukot, mutta sen sijaan todennetaan käyttäjä koodin ja käyttäjätaulukon avulla. Sen jälkeen kun olen todennettu, käytän FormsAuthentication-palvelua luodaksesi ja määrittäen autentikointievästeen. En käytä ' en käytä ASP: tä .NET-identiteetti, mutta toivon, että se tukee myös tätä skenaariota.
- @Tony_Henrich, " todenna käyttäjä koodilla ja käyttäjätaulukolla. Sitten kun olen todennettu, käytän FormsAuthentication-palvelua luodaksesi ja määrittäessäni eväste " Se, mitä ' tarkalleen päätän. En todellakaan pidä ASP.NET-jäsenohjauksista ja sen SQL Server -taulukoista. " ASP.NET-jäsenyyden " järjestelmässä tiedän, että se on ehdottomasti vanhentunut ja sen käyttö tulisi lopettaa (koska itse asiassa monta vuotta sitten)
- hyvä avoimen lähdekoodin projekti, joka käyttää MVC5: tä ja mukautettua lomaketodennusta: github.com/YodasMyDad/mvcforum