1

我遇到了使用AuthorizeAttribute和302重定向循环的表单身份验证的问题。我需要找出发生了什么事。无论如何,我可以调试窗体身份验证和AuthorizeAttribute?如何调试AuthorizeAttribute和FormsAuthentication调用

只是一些细节,如果它是很重要的:

  1. 我使用自定义成员资格提供程序和角色提供。我已经实现了正确的方法,并从我的自定义数据库表中读取用户/角色。

  2. 我在web.config以下指向我的自定义提供:

    <membership defaultProvider="MyMembershipProvider"> 
        <providers> 
         <clear /> 
         <add name="MyMembershipProvider" type="Domain.Entities.Security.MyMembershipProvider" connectionStringName="MyDB" MinRequiredPasswordLength="8" MaxInvalidPasswordAttempts="5" MinRequiredNonAlphanumericCharacters="0" applicationName="My App Name" /> 
        </providers> 
    </membership> 
    <profile enabled="false"> 
        <providers> 
         <clear /> 
        </providers> 
    </profile> 
    <roleManager enabled="true" defaultProvider="MyRoleProvider" cookieTimeout="2800" cookieSlidingExpiration="true" cacheRolesInCookie="true"> 
        <providers> 
         <clear /> 
         <add name="MyRoleProvider" type="Domain.Entities.Security.MyRoleProvider" connectionStringName="MyDB" applicationName="/" /> 
        </providers> 
    </roleManager> 
    
  3. 我的一些控制器/动作是“开放”。其中一些人拥有'授权[角色=“管理员”]和类似的。

  4. 有时我可以在没有任何事情发生的情况下工作几个小时。有时我在登录后不久就打到了302重定向循环,然后我尝试进入其他页面之一。一旦发生这种情况,我甚至无法进入顶层路径,而无需进入302重定向循环。

任何方向,任何指针,任何建议将不胜感激。

+0

有人吗?任何类型的指导呢?我一直盯着它看这么久,不知道下一步该往哪里看。谢谢 – SimpleUser

回答