钥匙斗篷 用户临时锁定上的自定义消息



我正在使用Kyecloak:4.8.0,并为我的领域启用了蛮力攻击。现在,每当用户提供错误的凭据3次时,用户将被暂时锁定。

但用户仍然会看到"用户名/密码无效"。

根据这个线程,Keycloak故意这样做:https://issues.jboss.org/browse/KEYCLOAK-5284

但我仍然想向用户显示他的帐户已被锁定。

有没有办法自定义此消息?

我尝试通过在自定义钥匙斗篷主题中添加消息来执行此操作,如下所示:

位置:主题\管理员\登录\消息\messages_en.属性

accountTemporarilyDisabledMessage=Account is temporarily disabled, contact admin or try again later.

此更改不起作用。

在浏览了Keycloak基本代码之后,我发现:Keycloak使用Messages.INVALID_USER(无效用户消息(来自AbstractFormAuthenticator类中编写的属性。

这个类在最后由用户名密码表单扩展,现在将其更改为自定义消息我写的自定义身份验证器(Keycloak SPI(,如下所示

public class CustomUsernameFormAuthenticator extends UsernamePasswordForm {
    @Override
    protected String tempDisabledError() {
        return Messages.ACCOUNT_TEMPORARILY_DISABLED;
    }
}

在此之后,在钥匙斗篷中部署 spi Jar 并在您的领域启用它。我们完成了:)

相关内容

  • 没有找到相关文章

最新更新