Alexander Schwartz a6dd9dc0f1 Avoiding AvlPartitionFactory and using JdbmPartitionFactory for the embedded LDAP to work around unstable tests.
Fix for #11171 didn't turn out to cover the root cause. Also improved transaction handling in LDAP Map storage.

Closes #11211
2022-04-12 09:12:21 +02:00

271 lines
9.0 KiB
JSON
Executable File

{
"hostname": {
"provider": "${keycloak.hostname.provider:}",
"default": {
"frontendUrl": "${keycloak.frontendUrl:}",
"adminUrl": "${keycloak.adminUrl:}",
"forceBackendUrlToFrontendUrl": "${keycloak.hostname.default.forceBackendUrlToFrontendUrl:}"
}
},
"eventsStore": {
"provider": "${keycloak.eventsStore.provider:}"
},
"deploymentState": {
"provider": "${keycloak.deploymentState.provider:jpa}",
"map": {
"resourcesVersionSeed": "1JZ379bzyOCFA"
}
},
"dblock": {
"provider": "${keycloak.dblock.provider:jpa}"
},
"realm": {
"provider": "${keycloak.realm.provider:jpa}",
"map": {
"storage": {
"provider": "${keycloak.realm.map.storage.provider:concurrenthashmap}"
}
}
},
"client": {
"provider": "${keycloak.client.provider:jpa}",
"map": {
"storage": {
"provider": "${keycloak.client.map.storage.provider:concurrenthashmap}"
}
}
},
"clientScope": {
"provider": "${keycloak.clientScope.provider:jpa}",
"map": {
"storage": {
"provider": "${keycloak.clientScope.map.storage.provider:concurrenthashmap}"
}
}
},
"group": {
"provider": "${keycloak.group.provider:jpa}",
"map": {
"storage": {
"provider": "${keycloak.group.map.storage.provider:concurrenthashmap}"
}
}
},
"role": {
"provider": "${keycloak.role.provider:jpa}",
"map": {
"storage": {
"provider": "${keycloak.role.map.storage.provider:concurrenthashmap}"
}
}
},
"authenticationSessions": {
"provider": "${keycloak.authSession.provider:infinispan}",
"map": {
"storage": {
"provider": "${keycloak.authSession.map.storage.provider:concurrenthashmap}"
}
},
"infinispan": {
"authSessionsLimit": "${keycloak.authSessions.limit:300}"
}
},
"userSessions": {
"provider": "${keycloak.userSession.provider:infinispan}",
"map": {
"storage-user-sessions": {
"provider": "${keycloak.userSession.map.storage.provider:concurrenthashmap}"
},
"storage-client-sessions": {
"provider": "${keycloak.userSession.map.storage.provider:concurrenthashmap}"
}
}
},
"loginFailure": {
"provider": "${keycloak.loginFailure.provider:infinispan}",
"map": {
"storage": {
"provider": "${keycloak.loginFailure.map.storage.provider:concurrenthashmap}"
}
}
},
"mapStorage": {
"provider": "${keycloak.mapStorage.provider:}",
"concurrenthashmap": {
"dir": "${project.build.directory:target/map}",
"keyType.realms": "string",
"keyType.authz-resource-servers": "string"
},
"jpa-map-storage": {
"url": "${keycloak.map.storage.connectionsJpa.url:}",
"user": "${keycloak.map.storage.connectionsJpa.user:}",
"password": "${keycloak.map.storage.connectionsJpa.password:}",
"driver": "org.postgresql.Driver",
"driverDialect": "org.keycloak.models.map.storage.jpa.hibernate.dialect.JsonbPostgreSQL95Dialect",
"showSql": "${keycloak.map.storage.connectionsJpa,showSql:false}"
},
"ldap-map-storage": {
"vendor": "other",
"usernameLDAPAttribute": "uid",
"rdnLDAPAttribute": "uid",
"uuidLDAPAttribute": "entryUUID",
"userObjectClasses": "inetOrgPerson, organizationalPerson",
"connectionUrl": "${keycloak.map.storage.ldap.connectionUrl:}",
"usersDn": "ou=People,dc=keycloak,dc=org",
"bindDn": "${keycloak.map.storage.ldap.bindDn:}",
"bindCredential": "${keycloak.map.storage.ldap.bindCredential:}",
"roles.realm.dn": "ou=RealmRoles,dc=keycloak,dc=org",
"roles.common.dn": "dc=keycloak,dc=org",
"roles.client.dn": "ou={0},dc=keycloak,dc=org",
"membership.ldap.attribute": "member",
"role.name.ldap.attribute": "cn",
"role.object.classes": "groupOfNames",
"role.attributes": "ou",
"mode": "LDAP_ONLY",
"use.realm.roles.mapping": "true",
"connectionPooling": "true"
}
},
"user": {
"provider": "${keycloak.user.provider:jpa}",
"map": {
"storage": {
"provider": "${keycloak.user.map.storage.provider:concurrenthashmap}"
}
}
},
"userFederatedStorage": {
"provider": "${keycloak.userFederatedStorage.provider:}"
},
"userSessionPersister": {
"provider": "${keycloak.userSessionPersister.provider:}"
},
"authorizationPersister": {
"provider": "${keycloak.authorization.provider:jpa}",
"map": {
"storage": {
"provider": "${keycloak.authorization.map.storage.provider:concurrenthashmap}"
}
}
},
"theme": {
"staticMaxAge": "${keycloak.theme.staticMaxAge:}",
"cacheTemplates": "${keycloak.theme.cacheTemplates:}",
"cacheThemes": "${keycloak.theme.cacheThemes:}",
"folder": {
"dir": "${keycloak.theme.dir}"
}
},
"connectionsJpa": {
"default": {
"url": "${keycloak.connectionsJpa.url:jdbc:h2:mem:test;DB_CLOSE_DELAY=-1}",
"driver": "${keycloak.connectionsJpa.driver:org.h2.Driver}",
"driverDialect": "${keycloak.connectionsJpa.driverDialect:}",
"user": "${keycloak.connectionsJpa.user:sa}",
"password": "${keycloak.connectionsJpa.password:}",
"showSql": "${keycloak.connectionsJpa.showSql:}",
"formatSql": "${keycloak.connectionsJpa.formatSql:}",
"globalStatsInterval": "${keycloak.connectionsJpa.globalStatsInterval:}"
}
},
"realmCache": {
"provider": "${keycloak.realm.cache.provider:default}",
"default" : {
"enabled": "${keycloak.realm.cache.provider.enabled:true}"
}
},
"connectionsInfinispan": {
"default": {
"jgroupsUdpMcastAddr": "${keycloak.connectionsInfinispan.jgroupsUdpMcastAddr:234.56.78.90}",
"nodeName": "${keycloak.connectionsInfinispan.nodeName,jboss.node.name:}",
"siteName": "${keycloak.connectionsInfinispan.siteName,jboss.site.name:}",
"clustered": "${keycloak.connectionsInfinispan.clustered:}",
"async": "${keycloak.connectionsInfinispan.async:}",
"sessionsOwners": "${keycloak.connectionsInfinispan.sessionsOwners:}",
"l1Lifespan": "${keycloak.connectionsInfinispan.l1Lifespan:}",
"remoteStoreEnabled": "${keycloak.connectionsInfinispan.remoteStoreEnabled:}",
"remoteStoreHost": "${keycloak.connectionsInfinispan.remoteStoreServer:}",
"remoteStorePort": "${keycloak.connectionsInfinispan.remoteStorePort:}",
"hotrodProtocolVersion": "${keycloak.connectionsInfinispan.hotrodProtocolVersion}",
"embedded": "${keycloak.connectionsInfinispan.embedded:true}"
}
},
"connectionsHotRod": {
"default": {
"embedded": "${keycloak.connectionsHotRod.embedded:true}",
"embeddedPort": "${keycloak.connectionsHotRod.embeddedPort:11444}",
"enableSecurity": "${keycloak.connectionsHotRod.enableSecurity:false}"
}
},
"scripting": {
},
"jta-lookup": {
"provider": "${keycloak.jta.lookup.provider:}"
},
"login-protocol": {
"openid-connect": {
"legacy-logout-redirect-uri": "${keycloak.oidc.legacyLogoutRedirectUri:false}"
},
"saml": {
"knownProtocols": [
"http=${auth.server.http.port}",
"https=${auth.server.https.port}"
]
}
},
"userProfile": {
"provider": "${keycloak.userProfile.provider:declarative-user-profile}",
"declarative-user-profile": {
"read-only-attributes": [ "deniedFoo", "deniedBar*", "deniedSome/thing", "deniedsome*thing" ],
"admin-read-only-attributes": [ "deniedSomeAdmin" ]
}
},
"x509cert-lookup": {
"provider": "${keycloak.x509cert.lookup.provider:}",
"haproxy": {
"sslClientCert": "x-ssl-client-cert",
"sslCertChainPrefix": "x-ssl-client-cert-chain",
"certificateChainLength": 1
},
"apache": {
"sslClientCert": "x-ssl-client-cert",
"sslCertChainPrefix": "x-ssl-client-cert-chain",
"certificateChainLength": 1
},
"nginx": {
"sslClientCert": "x-ssl-client-cert",
"sslCertChainPrefix": "x-ssl-client-cert-chain",
"certificateChainLength": 1
}
}
}