Current File(s): conf/services.xml, services.properties
Format: Native Spring
Legacy V2 File(s): conf/services.xml
The services.xml file is used to specify many of the other configuration files (or more generally, Spring Resources) to load to configure various important services within the IdP. The services.properties file provides a less granular way to identify the Spring beans containing the lists of resources, and also controls the dynamic reloading behavior of those services.
You might modify these files to:
- change the resources used, or more commonly add additional resources to supplement built-in defaults
- configure more specialized approaches such as Subversion resources or remote HTTP resources
- control how often to check for changes and reload configurations, if at all
V2 Compatibility
A similar function was performed by the services.xml file in 2.x, but in 3.0 this file is now a native Spring bean file and the older services schema is not supported.
Contents
The file should contain a series of Spring bean lists that specify Resources to load into various services. The lists are named with specific bean IDs that must not be changed, as these direct the resources into the various services.
Properties
The following idp.properties may be set to control the reloading and fail-fast behavior of the various services. Missing properties will default a service to non-failfast and non-reloading behavior.
# Reload "failfast" (stop the IdP if a configuration is bad) # and reload check interval (0 or missing == never reload). idp.service.logging.failFast=true idp.service.logging.checkInterval=PT5M # Relying Party resolver #idp.service.relyingparty.failFast=true idp.service.relyingparty.checkInterval=PT5M # Metadata resolver #idp.service.metadata.failFast=true #idp.service.metadata.checkInterval=PT5M # Attribute resolver #idp.service.attribute.resolver.failFast=true idp.service.attribute.resolver.checkInterval=PT5M # Attribute filter # Failing the filter fast leaves no filters enabled. #idp.service.attribute.filter.failFast=true idp.service.attribute.filter.checkInterval=PT5M # NameID generation #idp.service.nameidGeneration.failFast=true idp.service.nameidGeneration.checkInterval=PT5M
Notes
Services that are configured using non-Spring syntax require an additional resource be loaded in order to enable Spring property replacement to work, and you should not remove that reference.
You can use any kind of Resource supported by Spring, along with additional custom resource types provided with the IdP for handling Subversion, HTTP, and file-backed HTTP resources.