Configuration Feature Toggles
You can control the list of auto-configuration classes to exclude them in the cas.properties
file:
1
spring.autoconfigure.exclude=org.apereo.cas.custom.config.SomethingConfigurationClass
While the above allows control over individual auto-configuration classes, in some cases it may be desirable to entirely disable a feature altogether by excluding all applicable auto-configuration classes without having to identify all of them. This can be done using the following feature toggles:
Feature | Property |
---|---|
AcceptableUsagePolicy
|
CasFeatureModule.AcceptableUsagePolicy.jdbc.enabled
|
AcceptableUsagePolicy
|
CasFeatureModule.AcceptableUsagePolicy.ldap.enabled
|
AcceptableUsagePolicy
|
CasFeatureModule.AcceptableUsagePolicy.mongo.enabled
|
AcceptableUsagePolicy
|
CasFeatureModule.AcceptableUsagePolicy.redis.enabled
|
AcceptableUsagePolicy
|
CasFeatureModule.AcceptableUsagePolicy.rest.enabled
|
AcceptableUsagePolicy
|
CasFeatureModule.AcceptableUsagePolicy.enabled
|
AccountRegistration
|
CasFeatureModule.AccountRegistration.enabled
|
AccountRegistration
|
CasFeatureModule.AccountRegistration.captcha.enabled
|
AccountRegistration
|
CasFeatureModule.AccountRegistration.scim.enabled
|
ACME
|
CasFeatureModule.ACME.enabled
|
Monitoring
|
CasFeatureModule.Monitoring.aws.enabled
|
Authentication
|
CasFeatureModule.Authentication.aws-cognito.enabled
|
Core
|
CasFeatureModule.Core.aws.enabled
|
CasConfiguration
|
CasFeatureModule.CasConfiguration.aws-s3.enabled
|
ServiceRegistry
|
CasFeatureModule.ServiceRegistry.s3.enabled
|

Note that not every single CAS feature may be registered in the Feature Catalog and as such regarded as a standalone feature. The catalog continues to grow throughout the CAS release lifecycle to recognize more modules as grouped distinct features, allowing for a one-shop store to disable or enable a given CAS feature.
Note that the above setting enforces conditional access to the auto-configuration class where a whole suite of @Bean
s would be
included or excluded in the application context upon initialization and startup. Conditional inclusion or exclusion of beans
generally has consequences when it comes to @RefreshScope
and supporting refreshable beans.
Note that feature modules are not refreshable at this point; they are processed on startup and will either be included in the assembled
application context or skipped entirely, depending on the result of the enforced condition.