对角色使用身份验证时,Authorize属性不起作用



我使用的装饰[Authorize]对项目中的所有控制器都很好。创建用户以及为该用户分配角色也非常有效。现在,在访问为该用户分配的角色时,我在调用Roles.IsUserInRoleAuthorize[(roles="ADMIN")]时出现了一个奇怪的错误。

错误是,在与SQL Server建立连接时,页面突然变得没有响应,并且在一段时间后出现连接超时错误。

Authorize属性使用System.Web.Http中的AuthorizeAttribute

我不相信这是否真的是连接超时问题,因为我在为用户创建或分配角色时没有任何问题。

啊哈,在这里我找到了问题的确切解决方案。MVC5身份验证角色失败

看看添加<remove name="RoleManager" />是如何解决这一问题的,我完全惊呆了。非常感谢lluppes:)。虽然我有解决方案,但如果这里有人能解释这是如何工作的,那就太好了。

任何正在浪费时间搜索解决方案的人,以下是您需要添加到Web.Config文件中的完整代码。

<system.webServer>
  <modules>
    <remove name="RoleManager" />
  </modules>
</system.webServer>

希望,这有帮助。

相关内容

  • 没有找到相关文章