KEYCLOAK-3196: Create single place to declare default keycloak subsystem
config.
This commit is contained in:
parent
3493aa4ab7
commit
ef442cae92
11 changed files with 137 additions and 223 deletions
|
@ -202,6 +202,31 @@
|
||||||
</execution>
|
</execution>
|
||||||
</executions>
|
</executions>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-dependency-plugin</artifactId>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>unpack</id>
|
||||||
|
<phase>compile</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>unpack</goal>
|
||||||
|
</goals>
|
||||||
|
<configuration>
|
||||||
|
<artifactItems>
|
||||||
|
<artifactItem>
|
||||||
|
<groupId>org.keycloak</groupId>
|
||||||
|
<artifactId>keycloak-wildfly-server-subsystem</artifactId>
|
||||||
|
<version>${project.version}</version>
|
||||||
|
<type>jar</type>
|
||||||
|
<includes>default-config/*.xml</includes>
|
||||||
|
</artifactItem>
|
||||||
|
</artifactItems>
|
||||||
|
</configuration>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
|
|
||||||
|
|
|
@ -1,19 +1,19 @@
|
||||||
<!--
|
<!--
|
||||||
~ Copyright 2016 Red Hat, Inc. and/or its affiliates
|
~ Copyright 2016 Red Hat, Inc. and/or its affiliates
|
||||||
~ and other contributors as indicated by the @author tags.
|
~ and other contributors as indicated by the @author tags.
|
||||||
~
|
~
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
~ Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
~ you may not use this file except in compliance with the License.
|
~ you may not use this file except in compliance with the License.
|
||||||
~ You may obtain a copy of the License at
|
~ You may obtain a copy of the License at
|
||||||
~
|
~
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
~ http://www.apache.org/licenses/LICENSE-2.0
|
||||||
~
|
~
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
~ Unless required by applicable law or agreed to in writing, software
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
~ distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
~ See the License for the specific language governing permissions and
|
~ See the License for the specific language governing permissions and
|
||||||
~ limitations under the License.
|
~ limitations under the License.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
|
||||||
xmlns:xalan="http://xml.apache.org/xalan"
|
xmlns:xalan="http://xml.apache.org/xalan"
|
||||||
|
@ -42,7 +42,7 @@
|
||||||
<xsl:template match="//ds:datasources">
|
<xsl:template match="//ds:datasources">
|
||||||
<xsl:copy>
|
<xsl:copy>
|
||||||
<xsl:apply-templates select="node()[name(.)='datasource']"/>
|
<xsl:apply-templates select="node()[name(.)='datasource']"/>
|
||||||
<datasource jndi-name="java:jboss/datasources/KeycloakDS" pool-name="KeycloakDS" use-java-context="true">
|
<datasource jndi-name="java:jboss/datasources/KeycloakDS" jta="false" pool-name="KeycloakDS" use-java-context="true">
|
||||||
<connection-url>jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE</connection-url>
|
<connection-url>jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE</connection-url>
|
||||||
<driver>h2</driver>
|
<driver>h2</driver>
|
||||||
<security>
|
<security>
|
||||||
|
@ -57,68 +57,7 @@
|
||||||
<xsl:template match="//j:profile">
|
<xsl:template match="//j:profile">
|
||||||
<xsl:copy>
|
<xsl:copy>
|
||||||
<xsl:apply-templates select="node()|@*"/>
|
<xsl:apply-templates select="node()|@*"/>
|
||||||
<subsystem xmlns="urn:jboss:domain:keycloak-server:1.1">
|
<xsl:copy-of select="document('../../../target/dependency/default-config/keycloak-server-default-config.xml')"/>
|
||||||
<web-context>auth</web-context>
|
|
||||||
<providers>
|
|
||||||
<provider>classpath:${jboss.home.dir}/providers/*</provider>
|
|
||||||
</providers>
|
|
||||||
<master-realm-name>master</master-realm-name>
|
|
||||||
<scheduled-task-interval>900</scheduled-task-interval>
|
|
||||||
<theme>
|
|
||||||
<staticMaxAge>2592000</staticMaxAge>
|
|
||||||
<cacheThemes>true</cacheThemes>
|
|
||||||
<cacheTemplates>true</cacheTemplates>
|
|
||||||
<dir>${jboss.home.dir}/themes</dir>
|
|
||||||
</theme>
|
|
||||||
<spi name="eventsStore">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
<provider name="jpa" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="exclude-events" value="["REFRESH_TOKEN"]"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="realm">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="user">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="userCache">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="userSessionPersister">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="authorizationPersister">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="timer">
|
|
||||||
<default-provider>basic</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsHttpClient">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsJpa">
|
|
||||||
<provider name="default" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="dataSource" value="java:jboss/datasources/KeycloakDS"/>
|
|
||||||
<property name="databaseSchema" value="update"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="realmCache">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsInfinispan">
|
|
||||||
<default-provider>default</default-provider>
|
|
||||||
<provider name="default" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="cacheContainer" value="java:comp/env/infinispan/Keycloak"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
</subsystem>
|
|
||||||
<subsystem xmlns="urn:jboss:domain:keycloak:1.1"/>
|
<subsystem xmlns="urn:jboss:domain:keycloak:1.1"/>
|
||||||
<subsystem xmlns="urn:jboss:domain:keycloak-saml:1.1"/>
|
<subsystem xmlns="urn:jboss:domain:keycloak-saml:1.1"/>
|
||||||
</xsl:copy>
|
</xsl:copy>
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
embed-server --server-config=standalone-ha.xml
|
embed-server --server-config=standalone-ha.xml
|
||||||
/subsystem=datasources/data-source=KeycloakDS/:add(connection-url="jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE",driver-name=h2,jndi-name=java:jboss/datasources/KeycloakDS,password=sa,user-name=sa,use-java-context=true)
|
/subsystem=datasources/data-source=KeycloakDS/:add(connection-url="jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE",jta=false,driver-name=h2,jndi-name=java:jboss/datasources/KeycloakDS,password=sa,user-name=sa,use-java-context=true)
|
||||||
/subsystem=infinispan/cache-container=keycloak:add(jndi-name="infinispan/Keycloak")
|
/subsystem=infinispan/cache-container=keycloak:add(jndi-name="infinispan/Keycloak")
|
||||||
/subsystem=infinispan/cache-container=keycloak/transport=TRANSPORT:add(lock-timeout=60000)
|
/subsystem=infinispan/cache-container=keycloak/transport=TRANSPORT:add(lock-timeout=60000)
|
||||||
/subsystem=infinispan/cache-container=keycloak/invalidation-cache=realms:add(mode="SYNC")
|
/subsystem=infinispan/cache-container=keycloak/invalidation-cache=realms:add(mode="SYNC")
|
||||||
|
@ -30,3 +30,5 @@ embed-server --server-config=standalone-ha.xml
|
||||||
/subsystem=keycloak-server/spi=realmCache/provider=default/:add(enabled=true)
|
/subsystem=keycloak-server/spi=realmCache/provider=default/:add(enabled=true)
|
||||||
/subsystem=keycloak-server/spi=connectionsInfinispan/:add(default-provider=default)
|
/subsystem=keycloak-server/spi=connectionsInfinispan/:add(default-provider=default)
|
||||||
/subsystem=keycloak-server/spi=connectionsInfinispan/provider=default/:add(properties={cacheContainer => "java:comp/env/infinispan/Keycloak"},enabled=true)
|
/subsystem=keycloak-server/spi=connectionsInfinispan/provider=default/:add(properties={cacheContainer => "java:comp/env/infinispan/Keycloak"},enabled=true)
|
||||||
|
/subsystem=keycloak-server/spi=jta-lookup/:add
|
||||||
|
/subsystem=keycloak-server/spi=jta-lookup/provider=jboss/:add(enabled=true)
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
embed-server --server-config=standalone.xml
|
embed-server --server-config=standalone.xml
|
||||||
/subsystem=datasources/data-source=KeycloakDS/:add(connection-url="jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE",driver-name=h2,jndi-name=java:jboss/datasources/KeycloakDS,password=sa,user-name=sa,use-java-context=true)
|
/subsystem=datasources/data-source=KeycloakDS/:add(connection-url="jdbc:h2:${jboss.server.data.dir}/keycloak;AUTO_SERVER=TRUE",jta=false,driver-name=h2,jndi-name=java:jboss/datasources/KeycloakDS,password=sa,user-name=sa,use-java-context=true)
|
||||||
/subsystem=infinispan/cache-container=keycloak:add(jndi-name="infinispan/Keycloak")
|
/subsystem=infinispan/cache-container=keycloak:add(jndi-name="infinispan/Keycloak")
|
||||||
/subsystem=infinispan/cache-container=keycloak/local-cache=realms:add()
|
/subsystem=infinispan/cache-container=keycloak/local-cache=realms:add()
|
||||||
/subsystem=infinispan/cache-container=keycloak/local-cache=users:add()
|
/subsystem=infinispan/cache-container=keycloak/local-cache=users:add()
|
||||||
|
@ -30,3 +30,6 @@ embed-server --server-config=standalone.xml
|
||||||
/subsystem=keycloak-server/spi=realmCache/provider=default/:add(enabled=true)
|
/subsystem=keycloak-server/spi=realmCache/provider=default/:add(enabled=true)
|
||||||
/subsystem=keycloak-server/spi=connectionsInfinispan/:add(default-provider=default)
|
/subsystem=keycloak-server/spi=connectionsInfinispan/:add(default-provider=default)
|
||||||
/subsystem=keycloak-server/spi=connectionsInfinispan/provider=default/:add(properties={cacheContainer => "java:comp/env/infinispan/Keycloak"},enabled=true)
|
/subsystem=keycloak-server/spi=connectionsInfinispan/provider=default/:add(properties={cacheContainer => "java:comp/env/infinispan/Keycloak"},enabled=true)
|
||||||
|
/subsystem=keycloak-server/spi=jta-lookup/:add
|
||||||
|
/subsystem=keycloak-server/spi=jta-lookup/provider=jboss/:add(enabled=true)
|
||||||
|
|
||||||
|
|
|
@ -47,8 +47,23 @@
|
||||||
<include>**/*TestCase.java</include>
|
<include>**/*TestCase.java</include>
|
||||||
</includes>
|
</includes>
|
||||||
</configuration>
|
</configuration>
|
||||||
</plugin>
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
|
<filters>
|
||||||
|
<filter>src/main/config/default-server-subsys-config.properties</filter>
|
||||||
|
</filters>
|
||||||
|
<resources>
|
||||||
|
<resource>
|
||||||
|
<directory>src/main/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
</resource>
|
||||||
|
</resources>
|
||||||
|
<testResources>
|
||||||
|
<testResource>
|
||||||
|
<directory>src/test/resources</directory>
|
||||||
|
<filtering>true</filtering>
|
||||||
|
</testResource>
|
||||||
|
</testResources>
|
||||||
</build>
|
</build>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
|
|
|
@ -0,0 +1,67 @@
|
||||||
|
keycloak.server.subsys.default.config=\
|
||||||
|
<subsystem xmlns="urn:jboss:domain:keycloak-server:1.1">\
|
||||||
|
<web-context>auth</web-context>\
|
||||||
|
<providers>\
|
||||||
|
<provider>classpath:${jboss.home.dir}/providers/*</provider>\
|
||||||
|
</providers>\
|
||||||
|
<master-realm-name>master</master-realm-name>\
|
||||||
|
<scheduled-task-interval>900</scheduled-task-interval>\
|
||||||
|
<theme>\
|
||||||
|
<staticMaxAge>2592000</staticMaxAge>\
|
||||||
|
<cacheThemes>true</cacheThemes>\
|
||||||
|
<cacheTemplates>true</cacheTemplates>\
|
||||||
|
<dir>${jboss.home.dir}/themes</dir>\
|
||||||
|
</theme>\
|
||||||
|
<spi name="eventsStore">\
|
||||||
|
<default-provider>jpa</default-provider>\
|
||||||
|
<provider name="jpa" enabled="true">\
|
||||||
|
<properties>\
|
||||||
|
<property name="exclude-events" value="["REFRESH_TOKEN"]"/>\
|
||||||
|
</properties>\
|
||||||
|
</provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="realm">\
|
||||||
|
<default-provider>jpa</default-provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="user">\
|
||||||
|
<default-provider>jpa</default-provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="userCache">\
|
||||||
|
<provider name="default" enabled="true"/>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="userSessionPersister">\
|
||||||
|
<default-provider>jpa</default-provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="authorizationPersister">\
|
||||||
|
<default-provider>jpa</default-provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="timer">\
|
||||||
|
<default-provider>basic</default-provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="connectionsHttpClient">\
|
||||||
|
<provider name="default" enabled="true"/>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="connectionsJpa">\
|
||||||
|
<provider name="default" enabled="true">\
|
||||||
|
<properties>\
|
||||||
|
<property name="dataSource" value="java:jboss/datasources/KeycloakDS"/>\
|
||||||
|
<property name="databaseSchema" value="update"/>\
|
||||||
|
</properties>\
|
||||||
|
</provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="realmCache">\
|
||||||
|
<provider name="default" enabled="true"/>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="connectionsInfinispan">\
|
||||||
|
<default-provider>default</default-provider>\
|
||||||
|
<provider name="default" enabled="true">\
|
||||||
|
<properties>\
|
||||||
|
<property name="cacheContainer" value="java:comp/env/infinispan/Keycloak"/>\
|
||||||
|
</properties>\
|
||||||
|
</provider>\
|
||||||
|
</spi>\
|
||||||
|
<spi name="jta-lookup">\
|
||||||
|
<default-provider>${keycloak.jta.lookup.provider:jboss}</default-provider>\
|
||||||
|
<provider name="jboss" enabled="true"/>\
|
||||||
|
</spi>\
|
||||||
|
</subsystem>\
|
|
@ -47,7 +47,7 @@ import static org.keycloak.subsystem.server.extension.ThemeResourceDefinition.WE
|
||||||
*/
|
*/
|
||||||
public class JsonConfigConverter {
|
public class JsonConfigConverter {
|
||||||
|
|
||||||
private static final List<String> NON_SPI_LIST = new ArrayList();
|
private static final List<String> NON_SPI_LIST = new ArrayList<>();
|
||||||
|
|
||||||
static {
|
static {
|
||||||
NON_SPI_LIST.add("providers");
|
NON_SPI_LIST.add("providers");
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
${keycloak.server.subsys.default.config}
|
|
@ -19,66 +19,5 @@
|
||||||
<!-- Template used by WildFly build when directed to include Keycloak subsystem in a configuration. -->
|
<!-- Template used by WildFly build when directed to include Keycloak subsystem in a configuration. -->
|
||||||
<config>
|
<config>
|
||||||
<extension-module>org.keycloak.keycloak-server-subsystem</extension-module>
|
<extension-module>org.keycloak.keycloak-server-subsystem</extension-module>
|
||||||
<subsystem xmlns="urn:jboss:domain:keycloak-server:1.1">
|
${keycloak.server.subsys.default.config}
|
||||||
<web-context>auth</web-context>
|
|
||||||
<providers>
|
|
||||||
<provider>classpath:${jboss.home.dir}/providers/*</provider>
|
|
||||||
</providers>
|
|
||||||
<master-realm-name>master</master-realm-name>
|
|
||||||
<scheduled-task-interval>900</scheduled-task-interval>
|
|
||||||
<theme>
|
|
||||||
<staticMaxAge>2592000</staticMaxAge>
|
|
||||||
<cacheThemes>true</cacheThemes>
|
|
||||||
<cacheTemplates>true</cacheTemplates>
|
|
||||||
<dir>${jboss.home.dir}/themes</dir>
|
|
||||||
</theme>
|
|
||||||
<spi name="eventsStore">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
<provider name="jpa" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="exclude-events" value="["REFRESH_TOKEN"]"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="realm">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="user">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="userCache">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="userSessionPersister">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="authorizationPersister">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="timer">
|
|
||||||
<default-provider>basic</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsHttpClient">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsJpa">
|
|
||||||
<provider name="default" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="dataSource" value="java:jboss/datasources/KeycloakDS"/>
|
|
||||||
<property name="databaseSchema" value="update"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="realmCache">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsInfinispan">
|
|
||||||
<default-provider>default</default-provider>
|
|
||||||
<provider name="default" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="cacheContainer" value="java:comp/env/infinispan/Keycloak"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
</subsystem>
|
|
||||||
</config>
|
</config>
|
||||||
|
|
|
@ -41,6 +41,7 @@ public class SubsystemParsingTestCase extends AbstractSubsystemBaseTest {
|
||||||
protected Properties getResolvedProperties() {
|
protected Properties getResolvedProperties() {
|
||||||
Properties properties = new Properties();
|
Properties properties = new Properties();
|
||||||
properties.put("jboss.home.dir", System.getProperty("java.io.tmpdir"));
|
properties.put("jboss.home.dir", System.getProperty("java.io.tmpdir"));
|
||||||
|
properties.put("keycloak.jta.lookup.provider", "jboss");
|
||||||
return properties;
|
return properties;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,79 +1 @@
|
||||||
<!--
|
${keycloak.server.subsys.default.config}
|
||||||
~ Copyright 2016 Red Hat, Inc. and/or its affiliates
|
|
||||||
~ and other contributors as indicated by the @author tags.
|
|
||||||
~
|
|
||||||
~ Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
~ you may not use this file except in compliance with the License.
|
|
||||||
~ You may obtain a copy of the License at
|
|
||||||
~
|
|
||||||
~ http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
~
|
|
||||||
~ Unless required by applicable law or agreed to in writing, software
|
|
||||||
~ distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
~ See the License for the specific language governing permissions and
|
|
||||||
~ limitations under the License.
|
|
||||||
-->
|
|
||||||
|
|
||||||
<subsystem xmlns="urn:jboss:domain:keycloak-server:1.1">
|
|
||||||
<web-context>auth</web-context>
|
|
||||||
<providers>
|
|
||||||
<provider>classpath:${jboss.home.dir}/providers/*</provider>
|
|
||||||
</providers>
|
|
||||||
<master-realm-name>master</master-realm-name>
|
|
||||||
<scheduled-task-interval>900</scheduled-task-interval>
|
|
||||||
<theme>
|
|
||||||
<staticMaxAge>2592000</staticMaxAge>
|
|
||||||
<cacheThemes>true</cacheThemes>
|
|
||||||
<cacheTemplates>true</cacheTemplates>
|
|
||||||
<dir>${jboss.home.dir}/themes</dir>
|
|
||||||
</theme>
|
|
||||||
<spi name="eventsStore">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
<provider name="jpa" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="exclude-events" value="["REFRESH_TOKEN"]"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="realm">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="user">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="userCache">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="userSessionPersister">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="authorizationPersister">
|
|
||||||
<default-provider>jpa</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="timer">
|
|
||||||
<default-provider>basic</default-provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsHttpClient">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsJpa">
|
|
||||||
<provider name="default" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="dataSource" value="java:jboss/datasources/KeycloakDS"/>
|
|
||||||
<property name="databaseSchema" value="update"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
<spi name="realmCache">
|
|
||||||
<provider name="default" enabled="true"/>
|
|
||||||
</spi>
|
|
||||||
<spi name="connectionsInfinispan">
|
|
||||||
<default-provider>default</default-provider>
|
|
||||||
<provider name="default" enabled="true">
|
|
||||||
<properties>
|
|
||||||
<property name="cacheContainer" value="java:comp/env/infinispan/Keycloak"/>
|
|
||||||
</properties>
|
|
||||||
</provider>
|
|
||||||
</spi>
|
|
||||||
</subsystem>
|
|
Loading…
Reference in a new issue