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