Keycloak用户达到最大登录失败次数后能否在登录页提示临时锁定
Keycloak账号锁定提示配置方案
默认Keycloak出于防账号枚举的安全考虑,账号被临时锁定时不会返回差异化提示,只会和密码错误时一样返回「无效的用户名或密码」,和问题描述的表现完全一致。你可以通过调整配置实现锁定状态的明确提示,操作步骤如下:
配置步骤
- 登录Keycloak管理后台,进入目标 Realm ,点击左侧菜单的认证选项,切换到策略标签页,选择「暴力破解检测」配置项
- 找到「显示失败通知」配置,将默认值
OFF修改为ON,保存配置即可生效 - 若你使用了自定义登录主题,需要确认主题的
login.ftl模板中已引入全局错误消息渲染逻辑,Keycloak默认模板已内置该逻辑,无需额外修改 - 如需自定义锁定提示的文本内容,可修改对应主题下
messages_zh_CN.properties文件中accountTemporarilyLocked属性的取值
注意事项
- 开启该提示后攻击者可通过返回内容区分「账号不存在/密码错误」和「账号存在但已锁定」,存在账号枚举风险,若业务对账号保密性要求极高,需权衡用户体验和安全优先级
- 登录失败次数上限、临时锁定时长都可在同一「暴力破解检测」页面配置,修改后即时生效,无需重启Keycloak服务
内容的提问来源于stack exchange,提问作者Ganesh Dhongade
相关产品推荐
相关产品推荐

