Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 27998|Répondre: 3

[Source] Asp.Net authentification et autorisation dans le MVC

[Copié le lien]
Publié sur 16/03/2017 13:47:34 | | |

MVC est livré avec un ActionFilter
Pour réaliser l’authentification d’identité dans Asp.NET WebForm, Microsoft nous propose trois options, la plus couramment utilisée étant notre authentification Form, qui doit être configurée avec les informations correspondantes. Par exemple, les informations de configuration suivantes :


Cela signifie que notre page de connexion est Login.aspx, la page par défaut après la connexion réussie est Default.aspx, et que nos informations utilisateur adoptent deux méthodes : la vérification et le chiffrement. Et le plus important, c’est que nous devons écrire la méthode d’autorisation (l’autorisation ci-dessous doit être écrite, sinon il est inutile d’utiliser uniquement l’authentification Forms puis de définir les attributs pertinents), refuser tous les utilisateurs anonymes, et seuls les utilisateurs connectés peuvent y accéder normalement. Ensuite, nous activons le bouton de connexion pour écrire le nom d’utilisateur dans le cookie (c’est-à-dire exécuter FormsAuthentication.SetAuthCookie(name, false) ; Voilà.
0 Dans Asp.Net MVC, nous pouvons aussi utiliser l’authentification Forms, mais si vous le faites dans WebForm, cela ne fonctionnera pas. Par exemple, vous configurez les informations comme ceci :


Vous configurez une connexion dans votre Login.aspx pour déclencher la connexion dans le AccountController afin de se connecter, où le code de connexion :

Après cela, vous constaterez que votre connexion ne sera pas exécutée. Quelle en est la raison ? Pourquoi le même réglage ne fonctionne-t-il pas dans MVC ? La raison est que le mécanisme est différent, car vous avez configuré une méthode d’autorisation qui rend la connexion inaccessible. Alors, comment fait-on ?
En fait, dans Asp.Net MVC, nous avons une meilleure façon de faire tout cela, nous n’avons pas besoin d’une méthode d’autorisation, ce qui signifie que nos informations de configuration ressemblent à ceci :




Il n’est pas nécessaire de préciser que les utilisateurs anonymes ne peuvent pas se connecter, etc. Bien sûr, vous constaterez que cela ne suffit pas, mais nous devons indiquer au système lesquels doivent être connectés pour y accéder. Vous pensez peut-être, o()〈))) Oh, c’est trop de problème. Ce n’est pas ça, c’est très simple, il suffit de cocher [Authorize] sur l’Action à authentifier. Par exemple, j’ai deux pages dans le dossier Accueil, Index et Home, et je veux que l’Index soit authentifié pour y accéder, mais Home ne le permet pas, donc je n’ai qu’à donner à l’Index la balise Action [Authorize], c’est-à-dire :



Cela permet d’accéder à Index après la connexion, tandis que Home n’a pas besoin d’être connecté. Si vous devez autoriser des rôles, vous pouvez spécifier le rôle en marquant Authorize (par exemple [Authorize(Role=Administrators)]), mais vous devez utiliser le mécanisme d’adhésion fourni par Microsoft, car votre rôle ne peut exister pour rien, mais existe dans la base de données correspondante, comme j’ai mentionné dans un autre blog.
Personnaliser l’ActionFilter
Parfois, vous ne pouvez pas atteindre ce type d’authentification, ou si vous pensez ne pas être assez flexible, cela n’a pas d’importance, Asp.Net MVC vous permet de personnaliser votre ActionFilter. Par exemple, je personnalise maintenant l’authentification :


Si une gestion des utilisateurs est nécessaire, je définirai les filtres liés au rôle :

En fait, vous constaterez que les deux attributs ci-dessus ont été résolus par l’Authorized intégré de MVC, et ici nous vous disons principalement que vous pouvez l’étendre si nécessaire.
Eh bien, c’est tout pour aujourd’hui ! Téléchargement du code source : FormFormsAuthenticationMvc





Précédent:Après la mise à niveau VPS, le processus est d’environ 45 et le CPU fonctionne à 100,
Prochain:Avertissement : « Conflits non résolus trouvés entre différentes versions du même assembleur dépendant »
 Propriétaire| Publié sur 30/03/2017 09:40:22 |
Publié sur 28/12/2017 14:58:56 |
Ce serait mieux s’il y avait des rendus
Publié sur 07/02/2023 15:44:56 |

Ce serait mieux s’il y avait des rendus
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com