【发布时间】:2019-06-13 22:21:00
【问题描述】:
我使用 dotnet 核心中的 AddOpenIdConnect 扩展方法设置了一个开放 id 连接提供程序,在本例中为 Google。来自发现文档:
https://accounts.google.com/.well-known/openid-configuration
谷歌似乎不支持联合注销,因为没有 end_session 端点。但是,在 Identity Server 4 中,调用:
var providerSupportsSignout = await HttpContext.GetSchemeSupportsSignOutAsync(idp);
返回真。因此,在注销期间,它会尝试使用以下方式退出谷歌:
return SignOut(new AuthenticationProperties { RedirectUri = url }, vm.ExternalAuthenticationScheme);
抛出异常:
InvalidOperationException: Cannot redirect to the end session endpoint, the configuration may be missing or invalid.
这是 Identity Server 4 中的一个错误,还是在设置 Oidc 提供程序时需要设置一个配置属性,以便此扩展方法能够识别提供程序不支持注销?
【问题讨论】:
标签: identityserver4