对于密码重置链接,keycloak默认显示链接到期时间分钟,但我们希望以小时显示。
为此,我们在keycloak电子邮件主题.ftl文件(password-reset.ftl)中进行了修改。如果我们在keycloak基本电子邮件主题(/ opt / keycloak / themes / base / email)中这样做,这些更改工作正常。但是在密钥泄露部署/升级之后,这些变化将被丢弃。
为了避免这种情况,我们已将此主题移至自定义主题文件夹(/ opt / keycloak / themes / mytheme / email),并为来自keycloak管理域主题配置的电子邮件选择了自定义电子邮件主题,但仍然,keycloak不使用自定义主题发送电子邮件。
文件:themes / mytheme / email / html / password-reset.ftl
以小时而非分钟显示时间的代码:
<html>
<body>
${msg("passwordResetBodyHtml",link, (linkExpiration/60)?string["0"], realmName)?no_esc}
</body>
</html>
选择mytheme以获取来自keycloak领域配置的电子邮件 configuration screenshot here