@Bean
        @RefreshScope(proxyMode = ScopedProxyMode.DEFAULT)
        @ConditionalOnMissingBean(name = "jpaMfaTrustEngine")
        public MultifactorAuthenticationTrustStorage mfaTrustEngine(
            @Qualifier("dataSourceMfaTrustedAuthn") final DataSource dataSourceMfaTrustedAuthn,
            @Qualifier("jpaMfaTrustTransactionTemplate")
            final TransactionOperations jpaMfaTrustTransactionTemplate,
            final CasConfigurationProperties casProperties,
            @Qualifier("mfaTrustCipherExecutor")
            final CipherExecutor mfaTrustCipherExecutor,
            @Qualifier("mfaTrustRecordKeyGenerator")
            final MultifactorAuthenticationTrustRecordKeyGenerator keyGenerationStrategy) {
            return new JpaMultifactorAuthenticationTrustStorage(
                casProperties.getAuthn().getMfa().getTrusted(),
                mfaTrustCipherExecutor, keyGenerationStrategy,
                jpaMfaTrustTransactionTemplate, dataSourceMfaTrustedAuthn);
        }
This is {@link CasJdbcMultifactorAuthnTrustAutoConfiguration}.

@author Misagh Moayyed
@since 5.0.0
support/cas-server-support-trusted-mfa-jdbc/src/main/java/org/apereo/cas/config/CasJdbcMultifactorAuthnTrustAutoConfiguration.java