我将IdentityServer4与多个外部登录提供程序一起使用,例如Google和Facebook。如果用户使用这些外部提供者之一登录,我将尝试根据电子邮件地址从数据库中检索该用户。在我们的数据库中,用户可能被标记为已阻止或已辞职。如果是这种情况,我需要向用户显示错误消息。我还需要重定向回登录页面,以便为用户提供使用其他帐户登录的选项。
我正在使用ExternalController of the IdentityServer4 Quickstart。此示例仅引发异常,但未提供有关如何向用户显示错误消息的示例。
在IdentityServer3中,IUserService.AuthenticateExternalAsync
提供了返回带有错误消息的AuthenticateResult
的选项:
context.AuthenticateResult = new AuthenticateResult("Error message");
IdentityServer4中是否有类似的功能可用于外部登录?