Parece que Spring siempre usa InMemoryRelyingPartyRegistrationRepository para devolver un bean con tipo RelyingPartyRegistrationRepository, consulte https://github.com/spring- proyectos / spring-boot / blob / master / spring-boot-project / spring-boot-autoconfigure / src / main / java / org / springframework / boot / autoconfigure / security / saml2 / Saml2RelyingPartyRegistrationConfiguration.java.

Pregunta: ¿cómo puedo inyectar (autowire) mi propia implementación de RelyingPartyRegistrationRepository? Digamos que me gustaría permitir que el repositorio de la parte de confianza cableado automáticamente se recargue automáticamente desde la base de datos una vez que tenga la configuración de SAML actualizada para un determinado cliente. ¿Es esto factible?

0
Gelin Luo 26 oct. 2020 a las 00:03

1 respuesta

La mejor respuesta

Puede proporcionar su propio bean y la configuración automática de arranque de primavera se apagará.

@Configuration
@EnableConfigurationProperties(Saml2RelyingPartyProperties.class)
public class SamlConfig{
   @Bean
   RelyingPartyRegistrationRepository relyingPartyRegistrationRepository(Saml2RelyingPartyProperties properties) {
    -- Provide custom repository implementation
   }
}

Es posible que necesite otros cambios después de crear su propio bean según lo que necesite.

1
s7vr 31 oct. 2020 a las 11:46