Comentários
- Defina " OK " e " Obsoleto, " e explique " Não ' t like. "
- Por que esta questão está fechada !? O OP está perguntando se FormsAuthentication está obsoleto no MVC 5 e se há ' s outra tecnologia que o substitua. Esta não é uma pergunta baseada em opinião como " O que você acha de usar FormsAuthentication no MVC 5 ".
- @Tony_Henrich, sim, não ' não entendo por que está fechado. Felizmente, Rowan deu uma resposta útil antes do encerramento. Parcialmente baseado em sua resposta, eu ainda usei FormsAuthentication em meu projeto MVC5.
- Não ' não entendo por que foi fechado? Não é ' esta questão o propósito desta troca de pilha, e não fazer este tipo de pergunta no stackoverflow?
- Eu não ' Não entendo por que esta questão foi fechada? Meu projeto está migrando de formulários da web do asp.net 4.0 com autenticação de formulário para asp.net 4.5 MVC5 e eu ' m pesquisando a melhor abordagem com o código atual. Não ' deixe o StackExchange moderar pior do que a Wikipedia.
Resposta
Sim. FormsAuthentication está obsoleto no MVC 5 e posteriores.
Pelo menos, essa é a resposta curta.
A resposta longa é que pré-MVC 5 FormsAuthentication tradicional ainda está ok para usar . No entanto, está sendo eliminado em favor de abordagens alternativas, como Identidade ASP.NET .
No Visual Studio 2013, as opções de autenticação fornecidas para um aplicativo MVC 5 são as seguintes:
Neste caso, Contas de usuários individuais refere-se à Identidade ASP.NET .
De acordo com a Microsoft, a antiga Associação ASP.NET foi substituído pela identidade ASP.NET,
[…] o aplicativo de amostra será configurado para usar a identidade ASP.NET ( anteriormente conhecido como associação ASP.NET )
(Ênfase minha)
A Microsoft também declara
O novo sistema de associação é baseado em OWIN em vez do módulo de autenticação de formulários ASP.NET.
Então, a identidade não substituiu exatamente a autenticação de formulários, mas substituiu o sistema de associação que usava autenticação de formulários. Uma coisa boa também, porque de acordo com uma pergunta que fiz em 2013, Associação é um tanto confusa .
Um tipo de FormsAuthentication ainda existe, embora . De acordo com a Microsoft ,
O ASP.NET também tem suporte para autenticação de formulários por meio do FormsAuthenticationModule, que, no entanto, só pode oferecer suporte a aplicativos hospedados em ASP.NET e não tem suporte de declarações. Aqui está uma lista aproximada de comparação de recursos:
Então, se você ainda gostaria de usar FormsAuthentication, verifique Compreendendo a autenticação de formulários OWIN no MVC 5 .
Portanto, a Microsoft incentiva você a usar a identidade ASP.NET. Você não precisa, é claro. Você pode simplesmente selecionar Sem autenticação e o projeto não implementará nada para você. Cabe então a você atender às suas necessidades de inscrição / login .
Comentários
- Nem o OP nem esta resposta mencionam autenticação de formulário personalizado. Em meus aplicativos, eu não ' não quero e não uso a associação integrada controles e tabelas do SQL Server, mas em vez disso autentico um usuário usando meu código e a tabela de usuário. Depois de autenticado, uso FormsAuthentication para criar e configurar o cookie de autenticação. Não ' não uso ASP .NET Identity, mas espero que ele suporte este cenário também.
- @Tony_Henrich, " autenticar um usuário usando meu código e tabela de usuário. Então, uma vez autenticado, eu uso FormsAuthentication para criar e configurar o cookie de autenticação " Isso ' é exatamente o 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 ", sei que ele está definitivamente obsoleto e deve parar de ser usado (na verdade, há muitos anos)
- Um bom projeto de código aberto que usa MVC5 e autenticação de formulário personalizado: github.com/YodasMyDad/mvcforum