相关疑难解决方法(0)

太多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
查看次数

IdentityServer进入无限的身份验证循环

我在IdentityServer中设置了以下客户端:

new Client
{
    ClientName = "My web application",
    Enabled = true,
    ClientId = "mywebapp",
    ClientSecrets = new List<ClientSecret>
    {
        new ClientSecret("somesecret")
    },

    Flow = Flows.Hybrid,

    ClientUri = "https://app.mydomain.com",

    RedirectUris = new List<string>
    {
        "oob://localhost/wpfclient",
        "http://localhost:2672/",
        "https://app.mydomain.com"
    }
}
Run Code Online (Sandbox Code Playgroud)

我们说它是在线托管的https://auth.mydomain.com/core.

尝试修改MVC OWIN客户端(混合)示例客户端以登录到上述身份服务器,在Startup.cs我修改了ClientId,ClientSecretRedirectUri匹配IdSrv中的客户端设置.现在,当我尝试导航到需要授权的页面时,我被重定向到IdentityServer的URL.当我登录时,断点AuthorizationCodeReceived在客户端的通知中命中,Startup.cs然后进入循环.浏览器的状态显示:

Waiting for localhost...
Waitnig for auth.mydomain.com...
Waiting for localhost...
Waitnig for auth.mydomain.com...
...
Run Code Online (Sandbox Code Playgroud)

等等,永远不会完成登录.为什么会这样?请帮忙.

谢谢!

thinktecture-ident-server openid-connect identityserver3

4
推荐指数
1
解决办法
2039
查看次数