出于某种原因,我无法指定应该允许访问错误日志的角色。无论我输入什么角色(我有 Admin、Super 和 Test 角色),我的应用程序都会重定向到登录屏幕,这是我未获得授权的预期行为。如果我选择允许带有 * 的所有角色,它工作得很好,但是当我需要将其限制为超级角色时允许所有角色。
我的 web.config 文件中有以下内容,允许在登录时访问所有角色:
<add key="loginUrl" value="~/Login/" />
<add key="elmah.mvc.disableHandler" value="false" />
<add key="elmah.mvc.disableHandleErrorFilter" value="false" />
<add key="elmah.mvc.requiresAuthentication" value="true" />
<add key="elmah.mvc.allowedRoles" value="*" />
<add key="elmah.mvc.route" value="elmah" />
但是当我将 allowedRoles 行更改为:
<add key="elmah.mvc.allowedRoles" value="Super" />
它不允许任何人访问,只是将他们发送到登录屏幕。
任何想法将不胜感激。这是我第一次尝试使用 Elmah,它看起来非常好,但我对它还不是很熟悉,所以如果有人需要更多信息来提供帮助,我会提供。
编辑
我现在已经将 Emlah 配置为使用 SQL Server 记录错误,不确定这是否会对任何潜在的答案产生影响。