如何在asp.net中为特定页面强制登录

时间:2014-03-10 23:12:32

标签: asp.net

我已经使用登录和注册选项创建了默认母版页站点。

当您创建默认页面时,您将获得三个菜单选项,即HOME ABOUTUS CONTACTUS。

我又添加了一个菜单选项,即ADMIN。

每当有人点击ADMIN时,他们就会强制登录。

我该怎么做?

目前,任何人都可以在不登录的情况下浏览所有菜单页面。

我想强制要求。

请帮助,基本上我只需要会员页面

2 个答案:

答案 0 :(得分:0)

您可以使用位置配置指定文件夹或页面的路径,请参阅下面的示例并链接到Microsoft详细信息。

http://msdn.microsoft.com/en-us/library/ff648345.aspx

<configuration>
  <system.web>
    <authentication mode="Forms">
        <forms loginUrl="https://myserver/mywebapp/secure/Login.aspx" 
               protection="All" 
               timeout="30" 
               name="AppNameCookie" 
               path="/FormsAuth" 
               requireSSL="true" 
               slidingExpiration="true" 
               defaultUrl="default.aspx"
               cookieless="UseCookies"
               enableCrossAppRedirects="false"/>
    </authentication>

    <!-- Deny access to unauthenticated users -->
    <authorization> 
       <deny users="?" />
       <allow users="*" />
     </authorization>
  </system.web>
</configuration>

<!-- Allow unrestricted access to the folder with the login page -->
<location path="secure">
  <system.web>
    <authorization> 
       <allow users="*" />
     </authorization>
  </system.web>
</location>

答案 1 :(得分:0)

在您的应用web.config文件中添加此部分,拒绝所有未经身份验证的用户访问该位置admin_page.aspx

   <configuration>
     <location path="admin_page.aspx">
      <system.web>
        <authorization>
          <deny users="?" /> 
        </authorization>
      </system.web>
     </location>
    </configuration>

阅读this以获取有关 ASP.NET应用程序中的控制授权权限的更多信息