8

設定:

ASP.NET MVC 4アプリの場合、エラーをログに記録するためにElmah.MVC2.0.1を使用しています。

NuGetを使用してElmah.MVCをインストールしました。正常に動作します。

問題:

Elmah.MVCパッケージはコントローラーや領域をインストールしないため、ASP.NET MVCで推奨されているように、承認属性を介してセキュリティを適用する明確な方法がわかりません。

質問:

管理者ロールのユーザーだけがElmahページを表示できるようにしたい。

どうすればよいですか?

4

2 に答える 2

15

痛い!

答えが見つかりました。

Elmah MVC 2.0.1 NuGetパッケージは、<appSettings>(web.config内の)以下を追加します。

<add key="elmah.mvc.requiresAuthentication" value="false" />
<add key="elmah.mvc.allowedRoles" value="*" />

私が望むことを簡単に達成するには:

<add key="elmah.mvc.requiresAuthentication" value="true" />
<add key="elmah.mvc.allowedRoles" value="Admin" />
于 2012-10-26T16:03:03.923 に答える
0

次のようなURLアクセス制御も使用できると思います。

    <location path="elmah.axd">
  <system.web>
    <httpHandlers>
      <add verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" />
    </httpHandlers>
    <authorization>
      <allow roles="YourRole" />
      <deny users="*" />
    </authorization>
  </system.web>
  <system.webServer>
    <handlers>
      <add name="ELMAH" verb="POST,GET,HEAD" path="elmah.axd" type="Elmah.ErrorLogPageFactory, Elmah" preCondition="integratedMode" />
    </handlers>
  </system.webServer>
</location>
于 2013-11-21T15:30:04.210 に答える