我有一个使用单点登录解决方案的.net MVC应用程序,并且在ASP.net会话过期(或用户可以注销)但SSO会话仍然有效的情况下出现了问题。当发生这种情况时,应用程序最终处于一个奇怪的状态,它认为用户已登录,但表单身份验证不会。
在一个重叠的OnActionExecuting
方法中,会检查这种情况,如果是这种情况,应用程序会使用表单身份验证登录用户,创建cookie并附加到响应等。最后一步此过程是重定向回到他们当前请求的页面,确保HttpContext
正确填充了用户等,但是,对原始操作的调用继续处理,最终在尝试访问时导致异常当前上下文用户属性。
那么,是否可以暂停,而不会抛出当前控制器执行的另一个异常,或者是否可以调用一些其他函数然后填充Context?