如何在 keycloak 中为主领域设置自定义主题?

How to set custom theme for master realm in keycloak?

我已经捆绑了一个自定义主题作为 keycloak docker 图像的一部分。启动keycloak集群时,需要在master realm中设置自定义主题。

如何配置主领域以设置自定义主题?

在管理控制台中,正确部署所有内容后,您只需执行以下操作:

  • 大师境界;
  • 领域设置;
  • Select 主题;
  • 然后 select 您要更改的每种主题类型(例如, 登录主题)的自定义主题;

这可以使用 Keycloak Admin CLI

./kcadm update realms/masterE -s "loginTheme=<YOUR_CUSTOM_THEME>"

要使用该脚本,您必须先验证自己:

 ./kcadm config credentials --server <KEYCLOAK_HOST>auth --realm master --user admin --password <ADMIN_PASSOWRD>

您可以将这些命令添加到您的 docker 配置中。您拥有的另一个选择是仅使用您的自定义主题覆盖包含基本主题的文件夹。因此,默认主题将是您的自定义主题。您可以使用不同的名称制作基本主题的副本,这样您还可以在需要时明确 selected。

使用来自 docker 集线器的官方 Keycloak 图像,您可以 pass an environment variable KEYCLOAK_DEFAULT_THEME to use a custom theme,前提是它位于 /opt/jboss/keycloak/themes/:

docker run -d -p 8080:8080 -v ./my-realm.json:/tmp/my-realm.json -v ./my-awesome-theme:/opt/jboss/keycloak/themes/my-awesome-theme -e KEYCLOAK_DEFAULT_THEME=my-awesome-theme -e KEYCLOAK_USER=admin -e KEYCLOAK_PASSWORD=p@ssw0rd -e KEYCLOAK_IMPORT=/tmp/my-realm.json jboss/keycloak