我知道类似的问题早已被提出at stack overflow但它对我没有用 . 在回答/评论之前,请仔细阅读整个问题 .
我已经在两个Web应用程序中实现了AD B2C,所有这些都在上周工作正常 . 现在我们突然间得到了
错误请求 - 请求太长HTTP错误400.请求标头的大小太长 .
当用户尝试登录网站时 . 由于我的网站要求每个用户都登录,因此它完全阻止了我们 .
我的网络应用也无法在隐身/隐私窗口中使用 . 浏览器:Chrome,Firefox和Edge
当我在删除所有历史记录后以chrome(非隐身)打开应用程序时,我可以看到来自网络应用程序网址的大约160个Cookie .
是的太多cookie似乎正在杀死我的webapp,但它甚至在删除浏览器的所有历史记录和私密浏览之后也会发生 .
甚至我已经将claim属性减少为3,怀疑更多声明属性可能会增加标头大小 .
我试过this too但是徒劳无功 .
结论:删除cookie和减少索赔都不适用于我们,我们被阻止 . 提前致谢 .
1 回答
在微软支持团队提出一张票后,我得到了修复 .
Cause: Owin Middle ware存在一个众所周知的问题,即它没有设置身份验证cookie,我们最终会进入登录循环 . 我使用的是旧版本的OWIN .
Resolution: OWIN版本3.1.0.0已根据cookie管理器集成了修复程序 .
注意:尽管使用了修复程序,如果我们在应用程序中使用了自定义SESSIONSTATE处理程序,我们可能会遇到问题 . 在STARTUP.AUTH.CS中,我们需要进行以下更改
旧:
新:
以下是讨论相同的问题:
Second sign-in causes infinite redirect loop after the first successful login MVC .NET 5 OWIN ADAL OpenIDConnect
希望这有助于其他人 .
快乐的编码 .