【问题标题】:Identity Server 4: Redirect or Show Error Message in OnTokenValidatedIdentity Server 4:在 OnTokenValidated 中重定向或显示错误消息
【发布时间】:2021-07-23 11:19:47
【问题描述】:

在我的 Web 应用程序中,在用户通过交互式登录页面进行身份验证后,我想在用户通过身份验证后在 OnTokenValidated 中进行一些额外的验证,如果失败,那么我想显示一个带有适当消息的漂亮页面。

我该怎么做?我试过了:

    private Task HandleOpenIdConnectOnTokenValidated(TokenValidatedContext context)
    {
        if (some condition fails...)
        {
                context.HttpContext.Response.Redirect("/home/notregistered");
                return Task.FromResult(-1);
            }
        }
        return Task.CompletedTask;
    }

其他选项是抛出异常,但它会显示令人不快的错误。如果这是最佳/唯一选项,我如何指定自定义错误页面并根据抛出的异常显示自定义内容?

谢谢

【问题讨论】:

    标签: identityserver4 openid-connect


    【解决方案1】:

    我会使用内置的授权机制来实现额外的授权要求。

    可能使用 IAuthorizationRequirement,如 here 所述。它允许您创建非常灵活的授权规则。

    【讨论】:

    • 谢谢,我创建了继承自 IAuthorizationFilter 的类并将其添加到 AddMvcOptions 过滤器中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-31
    • 2018-07-24
    • 1970-01-01
    相关资源
    最近更新 更多