相关疑难解决方法(0)

在第一次成功登录MVC .NET 5 OWIN ADAL OpenIDConnect后,第二次登录会导致无限重定向循环

先发帖所以要温柔!:)

我正在为Office 365开发一个MVC .NET 5 Web应用程序,并且正在使用OpenIDConnect框架.我已经设置了OWIN(3)和ADAL(2)以及我的Azure AD应用程序.没有用户操作登录,家庭控制器附加了[Authorize]属性,强制立即登录重定向到Azure AD.我没有在任何Authorize属性中使用角色.

问题:我可以成功登录我的应用程序 - 一次!首次登录后,我关闭浏览器(或在另一台机器上打开一个新浏览器),然后再次点击该应用程序.它将我重定向到我登录的Azure AD登录屏幕,然后它不断在应用程序和Azure之间重定向,直到我得到臭名昭着的400个标题为长期问题.看着饼干商店,我发现它充满了疙瘩.我检查了缓存(Vittorio的EFADALCache配方,虽然我在发现此问题时使用的是TokenCache.DefaultShared)并且它有数百行缓存数据(只有一行成功登录时生成).

我可以看到,当重定向通过输出窗口发生时,每次往返都会生成一个新的访问和刷新令牌:

Microsoft.IdentityModel.Clients.ActiveDirectory Verbose: 1 : 31/07/2015 12:31:52: 15ad306e-e26d-4827-98dc-dea75853788a - AcquireTokenByAuthorizationCodeHandler: Resource value in the token response was used for storing tokens in the cache
iisexpress.exe Information: 0 : 31/07/2015 12:31:52: 15ad306e-e26d-4827-98dc-dea75853788a - AcquireTokenByAuthorizationCodeHandler: Resource value in the token response was used for storing tokens in the cache
Microsoft.IdentityModel.Clients.ActiveDirectory Information: 2 : 31/07/2015 12:31:52:  - TokenCache: Deserialized 1 items to token cache.
iisexpress.exe Information: 0 : 31/07/2015 12:31:52: …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc azure owin asp.net-mvc-5 openid-connect

28
推荐指数
3
解决办法
9487
查看次数

太多cookie OpenIdConnect.nonce导致错误页面"错误请求 - 请求太长"

Microsoft.Owin.Security.OpenIdConnect在C#ASP MVC Web应用程序中使用OWIN/OAuth和OpenId Connect身份验证().使用Microsoft帐户登录SSO基本上可以正常工作,但我不时会在浏览器上显示错误页面Bad Request - Request Too Long.

我发现这个错误是由太多的cookie引起的.删除cookie有一段时间了,但过了一段时间后问题又回来了.

导致问题的cookie是从OpenId框架设置的,所以有几十个名字像的cookie OpenIdConnect.nonce.9oEtF53WxOi2uAw........

这不是SPA应用程序,但有些部分会使用ajax调用定期刷新.

asp.net cookies oauth owin

16
推荐指数
2
解决办法
8185
查看次数