【问题标题】:How do I prevent a web form from being accessed by manually typing the aspx file name into the browser?如何通过在浏览器中手动键入 aspx 文件名来防止访问 Web 表单?
【发布时间】:2017-01-23 14:20:23
【问题描述】:

我创建了一个仅供管理员使用的登录页面(因此无需检查用户是否为管理员)。该页面对存储用户名和密码的数据库进行检查。我能够成功地根据数据库检查名称/密码,然后将用户转移到管理页面,但是,我注意到我仍然可以输入http://localhost:xxxxx/AdminPage,它会带我到那里。我如何阻止人们这样做?我已经尝试添加

<authorization><deny users="?"/></authorization> 

到 web.config 文件,它阻止所有匿名用户进入,但现在我需要知道如何允许数据库中的用户获得权限。 (注意:这不是正常的默认登录设置。这是指向默认以外的页面)

【问题讨论】:

  • 使用

标签: c# asp.net webforms authorization forms-authentication


【解决方案1】:

您可以在here 中描述基于用户角色的授权。 如果使用默认的 ASP 角色系统,则需要在 web.config 中添加一些代码:

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

【讨论】:

  • 你应该在你的答案中包含更多细节,以防链接被破坏。
猜你喜欢
  • 2019-06-19
  • 2012-06-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-07
  • 2015-11-11
  • 1970-01-01
相关资源
最近更新 更多