FormsAuthentication est-il obsolète? [fermé]

46

Je crée un site Web avec ASP.NET MVC 5. Microsoft a-t-il mis en place une technologie pour remplacer FormsAuthentication ou recommande-t-il toujours d'authentifier l'utilisateur à l'aide de FormsAuthentication pour MVC 5?

sean717
la source
3
Définissez "OK" et "Obsolète" et expliquez "N'aime pas".
Robert Harvey
24
Pourquoi cette question est-elle close !? L'OP demande si FormsAuthentication est obsolète dans MVC 5 et s'il existe une autre technologie pour la remplacer. Ce n'est pas une question d'opinion du type "Que pensez-vous de l'utilisation de FormsAuthentication dans MVC 5"?
Tony_Henrich
3
@ Tony_Henrich, oui je ne comprends pas pourquoi c'est fermé. Heureusement, Rowan a fourni une réponse utile avant la fermeture. Partiellement basé sur sa réponse, j'ai toujours utilisé FormsAuthentication dans mon projet MVC5.
Sean717
3
Je ne comprends pas pourquoi c'était fermé? Cette question n’est-elle pas l’ objet de cet échange de pile et ne pose-t-elle pas ce genre de question dans stackoverflow?
contactmatt le
3
Je ne comprends pas pourquoi cette question a été fermée? Mon projet migre des formulaires Web asp.net 4.0 avec authentification de formulaire vers asp.net 4.5 MVC5 et je recherche la meilleure approche avec le code actuel. S'il vous plaît, ne laissez pas StackExchange modérer plus mal que Wikipedia.
JoshYates1980 Le

Réponses:

50

Oui. FormsAuthentication est obsolète dans MVC 5 et les versions ultérieures.

Au moins, c'est la réponse courte.

La réponse longue est que l’ utilisation de FormsAuthentication traditionnelle antérieure à MVC 5 est toujours acceptable . Il est toutefois progressivement éliminé au profit d’approches alternatives telles que ASP.NET Identity .

Dans Visual Studio 2013, les options d'authentification fournies pour et l'application MVC 5 sont les suivantes:

Options d'authentification VS2013

Dans ce cas, les comptes d'utilisateurs individuels font référence à l' identité ASP.NET .

Selon Microsoft, l’ancienne adhésion à ASP.NET a été remplacée par ASP.NET Identity.

[...] l'exemple d'application sera configuré pour utiliser l'identité ASP.NET ( anciennement appelée adhésion ASP.NET )

(Mon accentuation)

Microsoft a également déclaré

Le nouveau système d'adhésion est basé sur OWIN plutôt que sur le module d'authentification de formulaires ASP.NET.

Ainsi, Identity n'a pas exactement remplacé FormsAuthentication, mais plutôt le système d'adhésion qui utilisait FormsAuthentication. Une bonne chose aussi, car selon une question que j'ai posée en 2013, l' adhésion est plutôt déroutante .

Un type de FormsAuthentication existe toujours . Selon Microsoft ,

ASP.NET prend également en charge l'authentification par formulaire via FormsAuthenticationModule, qui ne peut toutefois prendre en charge que les applications hébergées sur ASP.NET et ne prend pas en charge les revendications. Voici une liste de comparaison des fonctionnalités: Comparaison des fonctionnalités

Par conséquent, si vous souhaitez toujours utiliser FormsAuthentication, consultez la rubrique Présentation de l'authentification OWIN Forms dans MVC 5 .

Microsoft vous encourage donc à utiliser ASP.NET Identity. Vous n'êtes pas obligé, bien sûr. Vous pouvez simplement sélectionner Aucune authentification et le projet n’implémentera rien pour vous. C’est ensuite à vous de répondre à vos besoins en termes d’adhésion / de connexion .

Rowan Freeman
la source
5
Ni l'OP ni cette réponse ne mentionnent l'authentification de formulaire personnalisée. Dans mes applications, je ne veux pas et n'utilise pas les contrôles d'appartenance intégrés et les tables SQL Server, mais plutôt l'authentification d'un utilisateur à l'aide de mon code et de la table utilisateur. Ensuite, une fois authentifié, j'utilise FormsAuthentication pour créer et configurer le cookie d'authentification. Je n'utilise pas ASP.NET Identity, mais j'espère qu'il prend également en charge ce scénario.
Tony_Henrich
@Tony_Henrich, "authentifiez un utilisateur à l'aide de mon code et de la table utilisateur. Puis, une fois authentifié, j'utilise FormsAuthentication pour créer et configurer le cookie d'authentification". C'est exactement ce que je finis par faire. Je n'aime vraiment pas les contrôles d'appartenance ASP.NET et ses tables SQL Server. Pour le système "d'adhésion ASP.NET", je sais qu'il est définitivement obsolète et qu'il faut cesser de l'utiliser (depuis plusieurs années à vrai dire)
sean717 le
Un bon projet open source qui utilise MVC5 et l'authentification de formulaire personnalisée: github.com/YodasMyDad/mvcforum
JoshYates1980 Le