2010-08-06 6 views
1

Je crée un site avec 2 sections différentes (site principal et administrateur) et les deux nécessitent une authentification.gérer 2 sections de connexion différentes

J'ai la section principale déjà créée et fonctionne correctement avec FormsAuthentication.

maintenant, comment puis-je créer la section admin? Puis-je réutiliser FormsAuthentication?

grâce

+0

Avez-vous trouvé une solution? J'essaye de faire la même chose ... thx! – VinnyG

Répondre

0

utilisateur - oui vous pouvez. Ce que vous devez faire est de créer des rôles (tels que webuser et admin) et assigner l'utilisateur au rôle approprié comme nécessaire (vous pouvez le faire soit en configurant l'utilisateur initialement ou plus tard comme une modification sur leur profil). de toute façon, revenons à la question. À l'intérieur de votre contrôleur, vous étudieriez ensuite les rôles qui existaient pour cet utilisateur connecté, ce qui déterminerait les actions de contrôleur auxquelles il avait accès et déterminerait quelle vue présenter, si l'action devait être «partagée» entre les rôles.

dans le contrôleur, vous pouvez décorer l'action avec le code suivant:

[Authorize(Roles="admin")] 
public ActionResult IndexAdminOnly() // you'd never have an action named this - purely to make the point 
{ 
    // your logic here 
} 

à l'inverse, vous pouvez le faire à l'intérieur du contrôleur:

[Authorize] 
public ActionResult Index() 
{ 
    if(Roles.IsUserInRole("admin")){ 
    // your admin logic here 
    } 
    if(Roles.IsUserInRole("webuser")){ 
    // your webuser logic here 
    } 
} 

ce qu'il est à son plus simple. J'espère que vous pouvez google un peu plus de liens pour vous aider à résoudre les problèmes qui surviennent une fois que vous y aller, ou laisser tomber une note ici.

+0

hé, merci pour cela. Je pense avoir oublié de mentionner que j'ai besoin de 2 zones de connexion distinctes. un pour la zone d'administration et l'autre pour le site principal. Donc, si quelqu'un se place quelque part sous/Admin, les utilisateurs devront être redirigés vers l'écran de connexion de l'administrateur et pour que les utilisateurs puissent accéder à la section principale, ils auront leur propre écran de connexion. Comment puis-je y parvenir? Pouvez-vous en configurer 2 dans la configuration Web pour rediriger les utilisateurs en conséquence? grâce – user

+0

utilisateur - « Fraid je ne peux pas vous aider. nous utilisons une seule politique de connexion ici et utilisons les rôles d'utilisateur pour déterminer quelle fonctionnalité est disponible sur cette base. –

Questions connexes