Asp.Net refuser l'accès à certaines pages pour les utilisateurs
Comment puis-je autoriser l'accès à mon application web à un utilisateur, mais leur refuser l'accès à une page spécifique? Je veux permettre à plus d'utilisations pour utiliser une application que j'ai construit, mais il ya un couple de pages, je n'en voulez pas être en mesure d'accéder.
Voici ce que j'ai dans le Web.config maintenant.
<authorization>
<allow roles="COMPANY\User_1"/>
<allow roles="COMPANY\User_2"/>
<allow roles="COMPANY\User_3"/>
<deny users="*"/>
</authorization>
====================================================================================
Voici ce que j'ai dans la balise
<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<customErrors mode="Off"/>
<compilation debug="true">
<assemblies>
<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="Microsoft.SqlServer.ConnectionInfo, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.SqlServer.Smo, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.SqlServer.SmoEnum, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/>
<add assembly="Microsoft.SqlServer.SqlEnum, Version=9.0.242.0, Culture=neutral, PublicKeyToken=89845DCD8080CC91"/></assemblies>
</compilation>
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<authentication mode="Windows"/>
<authorization>
<allow roles="COMPANY\User_1"/>
<allow roles="COMPANY\User_2"/>
<allow roles="COMPANY\User_3"/>
<deny users="*"/>
</authorization>
<identity impersonate="true" userName="COMPANY\User_1" password="password"/>
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
<pages maintainScrollPositionOnPostBack="true">
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add tagPrefix="asp" namespace="System.Web.UI.WebControls" assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add tagPrefix="asp" namespace="System.Web.UI.DataVisualization.Charting" assembly="System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
</controls>
</pages>
<httpHandlers>
<remove path="*.asmx" verb="*"/>
<add path="*.asmx" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
<add path="*_AppService.axd" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
<add path="ScriptResource.axd" verb="GET,HEAD" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" validate="false"/>
<add path="ChartImg.axd" verb="GET,HEAD,POST" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
</httpHandlers>
<httpModules>
<add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</httpModules>
</system.web>
OriginalL'auteur FashionHouseJewelry.com | 2009-08-28
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser les balises d'emplacement pour contrôler ce genre de chose.
Dans cet exemple, j'donner aux Clients et Administrateurs de l'accès à la CustomersFolder répertoire:
Et avec ce deuxième bloc, j'ai ensuite limiter l'accès à certains fichiers placés dans ce dossier à juste Admins:
Espérons que quelque chose comme cela va fonctionner pour vous.
Vous savez, j'ai mal compris votre question. Pour l'amour de quelqu'un d'autre qui voit dans cette -- non, vous n'avez pas à copier l'ensemble du système.contenus d'un site web. Vous devriez être bon d'aller.
OriginalL'auteur Brian MacKay
Cette vidéo fait un bon travail de discuter de vos options. Il y a aussi un peu de code:
http://www.asp.net/learn/videos/video-06.aspx
"Dans cette leçon, vous allez explorer les nouveaux membres capacités de ASP.NET 2.0. En outre, vous apprendrez au sujet de sécurité basée sur les rôles, et comment vous pouvez utiliser des rôles pour contrôler l'accès à votre site web."
OriginalL'auteur MedicineMan