【问题标题】:How do i restrict access to elmah without using in-built authentication?如何在不使用内置身份验证的情况下限制对 elmah 的访问?
【发布时间】:2011-10-19 08:15:21
【问题描述】:

我已经配置了 elmah,它运行良好。我也开始看到使用这种工具的好处。 现在,我只希望少数人能够访问 elmah.axd 文件,如果可能的话,我想在允许他们访问文件之前对他们进行身份验证。如果不使用 asp.net 内置身份验证,我该如何做到这一点。

【问题讨论】:

    标签: asp.net elmah


    【解决方案1】:

    Phil Haack wrote 很久以前的事了。

    首先你可以在ELMAH HttpHandler部分的path属性中添加admin

    <httpHandlers>
      <add verb="POST,GET,HEAD" path="/admin/elmah.axd" 
        type="Elmah.ErrorLogPageFactory, Elmah" />
    </httpHandlers>
    

    然后限制匿名访问该文件夹:

    <location path="admin">
      <system.web>
        <authorization>
          <deny users="?"/>
        </authorization>
      </system.web>
    </location>
    

    更多信息here

    【讨论】:

    • 你提到的授权机制是内置的asp.net授权一个???如果是这样,我已经在我的问题中说过,我不使用这种身份验证机制。
    • 链接失效:codingpowers.wordpress.com 被其所有者标记为私有
    【解决方案2】:

    这似乎是一个老问题

    How to provide only Access for ELMAH.axd for Administrator login in web

    给了我答案

    protected void Application_BeginRequest()
    {
        if(Request.Url.AbsolutePath.ToLowerInvariant().Contains("elmah.axd"))
        {
            // Check if user can see elmah and handle unauthorised users (return 401/redirect to login page/etc...)
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-02-23
      • 1970-01-01
      • 2020-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-12-15
      相关资源
      最近更新 更多