Comment faire pour implémenter basée sur les rôles sécurité avec l'authentification basée sur les formulaires dans votre application de ASP.NET à l'aide de Visual C# .NET

Traductions disponibles Traductions disponibles
Numéro d'article: 311495 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Sommaire

Résumé

Cet article explique comment implémenter la sécurité basée sur les rôles dans une application ASP.NET qui implémente l'authentification basée sur les formulaires l'aide de Visual C# .NET


Configuration requise

Cet article suppose que vous avez déjà mis en ?uvre l'authentification basée sur les formulaires d'une application ASP.NET.
301240 Comment faire pour implémenter l'authentification basée sur les formulaires dans votre application ASP.NET à l'aide de Visual c# .NET

Attribuer les rôles à l'authentification utilisateur

Les utilisateurs de formulaires généralement n'étant pas les utilisateurs Microsoft Windows, ils ne devez les rôles associés par défaut. Par conséquent, vous devez associer les rôles de l'authentification utilisateur à identité cet utilisateur afin que vous pouvez implémenter la sécurité basée sur-les rôles dans votre code.

Utilise le code exemple dans cette section pour implémenter sécurité basée sur les rôles dans votre application. Cet exemple de code affecte les rôles prédéfinis à l'authentification utilisateur. Selon la façon dont vous stockez vos données utilisateur, vous pouvez implémenter votre propre méthode pour récupérer les rôles de l'utilisateur authentifié et associer ces rôles à l'authentification identité de l'utilisateur, qui est illustrée dans l'exemple de code pour suivre.

Copiez le code suivant dans le fichier global.asax dans votre application existante pour attribuer les rôles à l'authentification utilisateur dans le gestionnaire d'événements Application_AuthenticateRequest :
public void Application_AuthenticateRequest( Object src , EventArgs e )
{
   if (!(HttpContext.Current.User == null))
   {
      if (HttpContext.Current.User.Identity.AuthenticationType == "Forms" )
      {
      System.Web.Security.FormsIdentity id;
      id = (System.Web.Security.FormsIdentity)HttpContext.Current.User.Identity;
      String[] myRoles = new String[2];
      myRoles[0] = "Manager";
      myRoles[1] = "Admin";
      HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(id,myRoles);
      }
   }
}
				

Vérifiez les rôles des utilisateurs et d'implémentation la logique de programme dans vos pages .aspx

Les étapes suivantes montrent comment implémenter et contrôler la logique de programme en fonction des rôles auquel appartient l'authentification utilisateur.
  1. Créer une page nouvelle .aspx nommée Sample.aspx, puis collez le code suivant :
    <%@ Page Language="C#" %>
    <%@ Import Namespace="System.Web" %>
    
      <script runat=server>
        public void Page_Load() {
    	if (User.IsInRole("Admin")){
    		Response.Write ("You are an Administrator");}
    	else {
    		Response.Write ("You do not have any role assigned");}
        }
    
      </script>
    					
  2. Enregistrer Sample.aspx dans votre application existante. Accédez à la page pour le tester.

Références

Pour plus d'informations sur les fonctionnalités de sécurité ASP.NET, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
306590 INFO : présentation de la sécurité ASP.NET
Pour plus d'informations sur la sécurité basée sur les rôles, consulter le suivant .NET Framework Software Development Kit (SDK) documentation :
Sécurité basée sur les rôles
http://msdn2.microsoft.com/en-us/library/52kd59t0(vs.71).aspx
La documentation et source le code sur le site Web MSDN suivant contient également des informations sur la sécurité basée sur les rôles :
Solutions de développement IBuySpy
http://msdn2.microsoft.com/en-us/library/ms978480.aspx
Microsoft fournit des coordonnées de sociétés tiers afin de rechercher le support technique. Ces informations peuvent modifiées sans préavis. Microsoft ne garantit pas l'exactitude des informations tiers contact concernant.

Propriétés

Numéro d'article: 311495 - Dernière mise à jour: jeudi 19 avril 2007 - Version: 3.9
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft ASP.NET 1.0
  • Microsoft Visual C# .NET 2002 Initiation
  • Microsoft ASP.NET 1.1
  • Microsoft Visual C# .NET 2003 Initiation
Mots-clés : 
kbmt kbhowtomaster kbsecurity KB311495 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 311495
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com