Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 27998|Resposta: 3

[Fonte] Asp.Net autenticação e autorização no MVC

[Copiar link]
Publicado em 16/03/2017 13:47:34 | | |

O MVC vem com um ActionFilter
Para alcançar a autenticação de identidade no Asp.NET WebForm, a Microsoft nos oferece três maneiras, sendo a mais comumente usada a autenticação do Formulário, que precisa ser configurada com as informações correspondentes. Por exemplo, as seguintes informações de configuração:


Isso significa que nossa página de login é Login.aspx, a página padrão após o login bem-sucedido é Default.aspx, e nossas informações de usuário adotam dois métodos: verificação e criptografia. E o mais importante é que precisamos escrever o método de autorização (a autorização abaixo deve ser escrita, caso contrário é inútil usar apenas a autenticação do Forms e então definir atributos relevantes), negar todos os usuários anônimos, e só usuários logados podem acessar normalmente. Depois disso, configuramos o botão de login para escrever o nome de usuário no cookie (ou seja, executar FormsAuthentication.SetAuthCookie(nome, falso); É isso.
0 No Asp.Net MVC também podemos usar autenticação Forms, mas se você fizer isso no WebForm, não vai funcionar. Por exemplo, você configura as informações assim:


Você configura um login no seu Login.aspx para acionar o login no AccountController para fazer login, onde o código de login:

Depois disso, você verá que seu login não será executado. Qual é o motivo? Por que a mesma configuração não funciona no MVC? O motivo é que o mecanismo é diferente, porque você configura um método de autorização que torna o login inacessível. Então, como fazemos isso?
Na verdade, em Asp.Net MVC temos uma maneira melhor de fazer tudo isso, não precisamos de um método de autorização, o que significa que nossas informações de configuração ficam assim:




Não há necessidade de especificar que usuários anônimos não podem fazer login, etc. Claro, você verá que só fazer isso não é suficiente, mas precisamos informar ao sistema quais precisam estar logados para acessar. Você pode estar pensando, o()〈))o Ah, isso é muito trabalho. Não é assim, é muito simples, só precisamos marcar [Autorizar] na Ação que precisa ser autenticada. Por exemplo, tenho duas páginas na pasta Home, Index e Home, e quero que o Index seja autenticado para acesso, mas o Home não permite, então só preciso dar ao Index a tag Action [Authorize], ou seja:



Isso permite que o Index seja acessado após o login, enquanto o Home não precisa estar logado. Se você precisar autorizar papéis, pode especificar o papel ao marcar Autorizar (por exemplo, [Authorize(Role=Administrators)]), mas precisa usar o mecanismo de associação fornecido pela Microsoft, porque seu papel não pode existir à toa, mas sim no banco de dados correspondente, como mencionei em outro blog.
Personalize o ActionFilter
Às vezes, você pode não conseguir atender a esse tipo de autenticação, ou se sentir que não é flexível o suficiente, não importa, Asp.Net MVC permite personalizar seu ActionFilter. Por exemplo, agora personalizo a autenticação:


Se for necessário gerenciamento de usuários, definirei os filtros relacionados ao papel:

Na verdade, você verá que os dois Atributos acima foram resolvidos pelo Authorized embutido do MVC, e aqui basicamente dizemos que você pode estendê-lo se necessário.
Bem, é isso por hoje! Código fonte para download: FormFormsAuthenticationMvc





Anterior:Após a atualização do VPS, o processo fica em cerca de 45 e a CPU chega a 100,
Próximo:Aviso: "Conflitos não resolvidos encontrados entre diferentes versões do mesmo assembly dependente"
 Senhorio| Publicado em 30/03/2017 09:40:22 |
Publicado em 28/12/2017 14:58:56 |
Seria melhor se houvesse renderizações
Publicado em 07/02/2023 15:44:56 |

Seria melhor se houvesse renderizações
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com