2009-06-23 8 views
3

J'ai un site frontal ASP.NET MVC 1.0 qui fonctionne bien et qui comporte une partie Données dynamiques que j'utilise comme zone d'administration principale pour le site.Comment authentifier les utilisateurs qui entrent dans la zone d'administration Dynamic Data du site ASP.NET MVC?

Je ne me suis pas encore beaucoup amusé avec l'authentification, mais cela semble être une conception de site Web assez logique pour les nouveaux sites .NET mis en place ces jours-ci. J'espère que quelqu'un pourrait avoir un conseil à partager sur la façon de verrouiller la section Dynamic Data d'un site (Dynamic Data utilise de vieilles pages ASPX) en utilisant l'authentification Froms, tout en laissant les composants frontaux MVC librement consultables. FYI - le site est hébergé sur Win2k3/IIS6.0 et MVC n'est pas installé sur le serveur, donc j'inclus les DLL dans le répertoire \ bin et j'utilise le moteur de routage pour ajouter le suffixe .aspx sur les contrôleurs, afin que IIS puisse comprendre les parties MVC du site.

Merci ...

Bernard.

Répondre

4

Vous devriez être en mesure de bloquer ces pages vers le bas de la même façon que vous souhaitez verrouiller les pages d'un site standard de asp.net - ajoutez le nom du dossier dans un bloc de localisation dans un web.config:

<!-- 
    The location element is only needed if this is in root web.config. 
    You could also create a web.config in the folder containing the dynamic data 
    pages and just have the elements from system.web 
--> 
<location path="DynamicDataFolder"> 
    <system.web> 
    <authorization> 
     <allow roles="Admin"/> 
     <deny users="*"/> 
    </authorization> 
    </system.web> 
</location> 

Cela suppose que vous avez configuré les fournisseurs d'appartenance et de rôles - il en existe des exemples dans le projet MVC par défaut et créé une page de connexion.

+0

Oui, ça marche, merci mon pote! – Bernard

+0

Oups, en fait, ce n'est pas aussi facile que ça en a l'air. Toujours aux prises avec ça ... – Bernard

+0

Pourriez-vous donner un peu plus d'informations sur les problèmes que vous avez avec elle? –