我有我自己的身份验证系统(https://bitbucket.org/anton_gogolev/octalforty-structural),它不使用任何标准的ASP.NET东西(<authentication mode="None" />
)。ASP.NET MVC中完全自定义身份验证:失去HttpContext.User
它使用普通IHttpModule
s到做的工作:BeginRequest
检查传入的cookie,并设置HttpContext.Current.User
和Thread.CurrentPrincipal
,认证成功后
Thread.CurrentPrincipal = HttpContext.Current.User =
new GenericPrincipal(tokenIdentity,new string[] { });
而EndRequest
问题所需的所有cookie进行身份验证的用户。
这一直是个做工精细了,但在某些系统上(我真的不能告诉如何从那些其实这上工作他们不同)ASP.NET似乎正在失去的HttpContext.Current.User
价值,取代它无论默认值如何(GenericPrincipal
汇总GenericIdentity
与IsAuthenticated
设置为false
等)。
所以问题是:HttpContext.Current.User
如何以及为什么会迷路?
我遇到同样的问题。任何解决方案 –
有关症状的更多详情?这是发生在一个用户还是多个用户?在受影响的系统中,是否每次或仅在某些时间丢失用户,以及是否仅在某些时间丢失用户多久? –