Keycloak 注册为重复的电子邮件抛出 HTTP 500

问题描述

我知道之前有一个关于此主题 here 的问题,但 OP 从未报告过该问题是否解决了该问题。并且因为

Internal Server Error

尽可能地对用户不友好,我很想把它改成更像是“一条消息”而不是“落在你脚上的铁砧”.

我发现 one other SO post 与此问题密切相关(关于消失的“重复电子邮件”开关),但问题确实不在于是否允许重复电子邮件(或如何恢复隐藏的管理控件) ) 但是一个非常普通的问题是如何传达给用户的——好吧,就像 Keycloak 在用户尝试使用现有用户名注册时如何通知他们一样。

我们目前正在使用 Keycloak 12.0.4 的 Docker 版本,并使用 Postgresql DB 在 IBM Cloud 中运行一些定制(自定义 BCrypt 模块、一些日志记录更改)。我们还添加自定义主题和国际化。不过,在使用认 Keycloak 主题时也会发生同样的错误

以下是我们的登录设置:

enter image description here

解决方法

事实证明这是一个配置问题,但隐藏得如此之深,以至于查看我创建的票证的 Keycloak 开发人员也掩盖了它。

肇事者在菜单配置>身份验证>选项卡:流>选择下拉列表:注册>配置文件验证单选按钮[o需要| o 禁用]

这被设置为禁用,这实际上防止了在领域设置>选项卡:登录表单建议处于活动状态的注册表中进行重复的电子邮件检查。但是,当然,数据库不会喜欢那样,具有上述结果。

当然,这种设置组合至少应该发出警告。我希望这会得到纠正。