FormsAuthentication é obsoleto? [fechadas]

46

Estou criando um site usando o ASP.NET MVC 5. A Microsoft lançou alguma tecnologia para substituir o FormsAuthentication ou ainda recomenda a autenticação do usuário usando o FormsAuthentication for MVC 5?

sean717
fonte
3
Defina "OK" e "Obsoleto" e explique "Não gosto".
Robert Harvey
24
Por que esta pergunta está encerrada !? O OP está perguntando se o FormsAuthentication está obsoleto no MVC 5 e se há outra tecnologia que o substitua. Esta não é uma pergunta baseada em opinião como "O que você acha do uso do FormsAuthentication no MVC 5".
Tony_Henrich
3
@ Tony_Henrich, sim, eu não entendo por que isso está fechado. Felizmente Rowan deu uma resposta útil antes do fechamento. Parcialmente baseado em sua resposta, eu ainda usei o FormsAuthentication no meu projeto MVC5.
Sean717 3/09/2015
3
Eu não entendo por que isso foi fechado? Essa pergunta não é o objetivo dessa troca de pilha e não fazer esse tipo de pergunta no stackoverflow?
contactmatt 16/02
3
Não entendo por que essa pergunta foi encerrada? Meu projeto está migrando dos formulários da web asp.net 4.0 com autenticação de formulário para o asp.net 4.5 MVC5 e estou pesquisando a melhor abordagem com o código atual. Por favor, não permita que o StackExchange seja moderado pior que a Wikipedia.
JoshYates1980

Respostas:

50

Sim. O FormsAuthentication foi descontinuado no MVC 5 e em diante.

Pelo menos, essa é a resposta curta.

A resposta longa é que o FormsAuthentication tradicional pré-MVC 5 ainda pode ser usado . No entanto, está sendo eliminado em favor de abordagens alternativas, como a identidade do ASP.NET .

No Visual Studio 2013, as opções de autenticação fornecidas para o aplicativo MVC 5 são as seguintes:

Opções de autenticação do VS2013

Nesse caso, contas de usuário individuais estão se referindo à identidade do ASP.NET .

Segundo a Microsoft, a antiga associação do ASP.NET foi substituída pelo ASP.NET Identity,

[...] o aplicativo de exemplo será configurado para usar a identidade do ASP.NET ( anteriormente conhecida como associação ao ASP.NET )

(Ênfase minha)

A Microsoft também declara

O novo sistema de associação é baseado no OWIN, e não no módulo de autenticação de formulários do ASP.NET.

Portanto, o Identity não substituiu exatamente o FormsAuthentication, mas substituiu o sistema Membership que usava o FormsAuthentication. Uma coisa boa também, porque de acordo com uma pergunta que fiz em 2013, a associação é bastante confusa .

Um tipo de FormsAuthentication ainda existe . De acordo com a Microsoft ,

O ASP.NET também oferece suporte à autenticação de formulários por meio do FormsAuthenticationModule, que, no entanto, pode oferecer suporte apenas a aplicativos hospedados no ASP.NET e não possui suporte a declarações. Aqui está uma lista aproximada de comparação de recursos: Comparação de recursos

Portanto, se você ainda deseja usar o FormsAuthentication, confira Noções básicas sobre autenticação de formulários OWIN no MVC 5 .

Portanto, a Microsoft recomenda que você use a identidade do ASP.NET. Você não precisa, é claro. Você pode simplesmente selecionar Sem autenticação e o projeto não implementará nada para você. Cabe a você atender às suas necessidades de associação / login .

Rowan Freeman
fonte
5
Nem o OP nem esta resposta mencionam autenticação de formulário personalizado. Nos meus aplicativos, não quero e não uso os controles de associação incorporados e as tabelas do SQL Server, mas autentico um usuário usando meu código e tabela de usuários. Depois de autenticado, uso FormsAuthentication para criar e configurar o cookie de autenticação. Não uso a identidade do ASP.NET, mas espero que também suporte esse cenário.
Tony_Henrich
@Tony_Henrich, "autentica um usuário usando meu código e tabela de usuários. Depois de autenticado, uso o FormsAuthentication para criar e configurar o cookie de autenticação" É exatamente isso que acabo fazendo. Eu realmente não gosto de controles de associação do ASP.NET e suas tabelas do SQL Server. Para o sistema "ASP.NET associação" Eu sei que é definitivamente obsoleta e deve ser parada a ser utilizado (desde há muitos anos, na verdade)
sean717
Um bom projeto de código aberto que usa MVC5 e formulário personalizado de autenticação: github.com/YodasMyDad/mvcforum
JoshYates1980