【问题标题】:keycloak throw authentication error from custom protocol mapperkeycloak 从自定义协议映射器抛出身份验证错误
【发布时间】:2020-12-02 09:53:05
【问题描述】:

我已经创建了一个扩展自 AbstractOIDCProtocolMapper 的 java 自定义协议映射器

这个映射器调用了一个rest api,我想根据响应的结果在登录时显示一个自定义消息错误。但我不知道该怎么做

我重写了方法

protected void setClaim(IDToken token, ProtocolMapperModel mappingModel, UserSessionModel userSession)

【问题讨论】:

    标签: keycloak


    【解决方案1】:

    您可以抛出一个扩展 org.keycloak.services.ErrorResponseException 的异常。在那里你可以覆盖

    @Override
        public Response getResponse() {
            if (response != null) {
                return response;
            } else {
                OAuth2ErrorRepresentation errorRep = new OAuth2ErrorRepresentation(error, errorDescription);
                return Response.status(status).entity(errorRep).type(MediaType.APPLICATION_JSON_TYPE).build();
            }
        }
    

    将任何对象作为实体传递,作为响应的一部分返回。

    【讨论】:

      猜你喜欢
      • 2019-12-19
      • 2018-03-17
      • 2013-09-19
      • 2011-11-05
      • 2018-07-15
      • 2020-08-19
      • 1970-01-01
      • 2016-05-28
      • 2021-03-12
      相关资源
      最近更新 更多