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

IdentityServer gets into infinite loop of authentication

我在 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"
    }
}

并且它是在线托管的,比方说 https://auth.mydomain.com/core

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

Waiting for localhost...
Waitnig for auth.mydomain.com...
Waiting for localhost...
Waitnig for auth.mydomain.com...
...

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

谢谢!

这很可能是由于在重定向中混用了 http 和 https。请始终使用一种方案,并在浏览器地址栏上检查该方案。