Ank*_*mar 6 azure azure-active-directory azureportal azure-web-app-service azure-ad-b2c
我知道之前在堆栈溢出时已经问过类似的问题,但它对我没有用。请在回答/评论之前阅读整个问题。
我已经在两个 Web 应用程序中实现了 AD B2C,直到上周都运行良好。现在突然间我们得到
错误请求 - 请求太长 HTTP 错误 400。请求标头的大小太长。
当用户尝试登录网站时。由于我的网站要求每个用户都登录,因此它完全阻止了我们。
我的网络应用程序也无法在隐身/私密窗口中运行。浏览器:Chrome、Firefox 和 Edge
在删除所有历史记录后,当我在 chrome(非隐身)中打开应用程序时,我可以看到来自 Web 应用程序 url 的大约 160 多个 cookie。
是的,太多的 cookie 似乎正在扼杀我的 web 应用程序,但即使在删除浏览器的所有历史记录和隐私浏览之后,它也会发生。
即使我怀疑更多的声明属性可能会增加标题大小,但我已将声明属性减少到 3。
我也试过这个,但徒劳无功。
底线:删除 cookie 和减少索赔对我们都不起作用,我们被阻止了。提前致谢。
在向 Microsoft 支持团队提出请求后,我解决了这个问题。
原因: Owin Middle ware 存在一个众所周知的问题,即它没有设置身份验证 cookie,我们最终处于登录循环中。我使用的是旧版本的 OWIN。
解决方案: OWIN 版本 3.1.0.0 已在 cookie 管理器方面集成了此修复程序。
注意:尽管使用了修复程序,但如果我们在应用程序中使用了自定义 SESSIONSTATE 处理程序,我们可能会遇到问题。在 STARTUP.AUTH.CS 中,我们将需要进行以下更改
老的:
app.UseCookieAuthentication(new CookieAuthenticationOptions{});
Run Code Online (Sandbox Code Playgroud)
新的:
app.UseCookieAuthentication(new CookieAuthenticationOptions {
AuthenticationType = "Cookies",
CookieManager = new Microsoft.Owin.Host.SystemWeb.SystemWebChunkingCookieManager()
});
Run Code Online (Sandbox Code Playgroud)
以下是讨论相同问题的问题:
第一次成功登录 MVC .NET 5 OWIN ADAL OpenIDConnect 后,第二次登录导致无限重定向循环
希望这可以帮助其他人。
快乐编码。
归档时间: |
|
查看次数: |
2431 次 |
最近记录: |