2010-11-25 4 views
1

Je souhaite comprendre le fonctionnement de la balise d'autorisation system.web sur le fichier web.config et ce que font exactement chaque attribut et chaque propriété.Rôles d'appartenance ASP.NET Paramètres Web.config

Par exemple, qu'est-ce que

<system.web> 
    <authorization> 
     <deny users="?"/> 
     <allow users="*"/> 
    </authorization> 
    </system.web> 

Plus précisément ce que je veux faire est d'interdire l'accès aux plus du site pour les utilisateurs non authentifiés, autoriser l'accès à certains du site pour les utilisateurs authentifiés qui appartiennent à un certain rôle, et permettre un accès complet aux utilisateurs d'un second rôle.

Répondre

2

Nevermind trouvé sur msdn:

Authorization Element
Allow Element
Deny Element

+0

Est-ce seulement pour moi, ou les liens sont-ils brisés? La façon dont je pouvais voir les pages était seulement en cliquant sur "Anciennes versions", puis en sélectionnant une version du framework. –

+0

les a fixés .. * msdn * a changé ceux apparemment. – bevacqua

5
<system.web> 
    <authorization> 
     <deny users="?"/> 
     <allow users="*"/> 
    </authorization> 
</system.web>` 

Cela permettra l'accès à toute personne qui est connecté

<deny users="?"/> refuse l'accès à un anonyme. utilisateurs - utilisateurs qui ne se sont pas connectés et puis <allow users="*"/> autorisera l'accès à tous les autres utilisateurs, dans ce cas tous les utilisateurs authentifiés.

Si cela se trouve dans votre fichier web.config principal, cela s'appliquera à l'ensemble du site. Si vous voulez avoir différents niveaux d'accès, vous pouvez utiliser la balise <location>:

<location path="~/Admin"> 
<system.web> 
    <authorization> 
    <allow roles="Admin"/> 
    <deny users="*"/> 
    </authorization> 
</system.web> 

Cela limitera l'accès à tous les fichiers/dossiers dans le dossier admin aux utilisateurs du rôle « Admin ».