【问题标题】:Deploying custom Keycloak theme with Operator (v15.1.1 & v16.0.0)使用 Operator 部署自定义 Keycloak 主题(v15.1.1 和 v16.0.0)
【发布时间】:2021-12-20 11:45:34
【问题描述】:

我有一个大小 >1MB 的主题(排除了 as an answer to this question 提供的 configmap-solution)。

这个主题已经按照Server Development Guide打包了——它的文件夹结构是

META-INF/keycloak-themes.json
themes/[themeName]/login/login.ftl
themes/[themeName]/login/login-reset-password.ftl    
themes/[themeName]/login/template.ftl
themes/[themeName]/login/template.html
themes/[themeName]/login/theme.properties
themes/[themeName]/login/messages/messages_de.properties
themes/[themeName]/login/messages/messages_en.properties
themes/[themeName]/login/resources/[...]

keycloak-themes.json的内容是

{
    "themes": [{
        "name" : "[themeName]",
        "types": [ "login" ]
    }]
}

[themeName] 是我的主题名称。

Keycloak 运行 3 个实例,其资源规格包括:

extensions:
  - [URL-to-jar]

根据每个 pod 的日志部署成功 - 每个日志包含一条消息,其中包含

Deployed "[jar-name].jar" (runtime-name : "[jar-name].jar")

但是,在管理控制台中,我无法从登录主题的扩展中选择主题。通过 crd 创建一个新领域,并通过 spec-entry 预先配置登录主题

loginTheme: [themeName]

也不起作用 - 在管理控制台中,登录主题的选定条目为空。

我可能遗漏了一些基本的东西,但如果我没记错的话,这似乎应该可以工作 according to this answer

【问题讨论】:

    标签: keycloak keycloak-operator


    【解决方案1】:

    通常情况下,未发现的拼写错误是错误的根源。

    目录结构必须

    • META-INF/keycloak-themes.json
    • 主题/[theme-name]/[theme-role]/theme.properties
    • [...]

    但是

    • META-INF/keycloak-themes.json
    • 主题/[主题名称]/[主题角色]/theme.properties
    • [...]

    如果结构正确,keycloak-operator 可以成功部署和加载自定义主题作为 jar 扩展。

    【讨论】:

      猜你喜欢
      • 2021-05-01
      • 2021-03-25
      • 2021-08-07
      • 2020-01-08
      • 2018-08-30
      • 2016-05-31
      • 1970-01-01
      • 2020-07-25
      • 1970-01-01
      相关资源
      最近更新 更多