0

Может быть вопрос новичка. Я хочу добавить CustomAuthenticationProviderInside Spring AuthenticationManager. Я нашел много примеров в Интернете:Весна безопасности пользовательских инъекций AuthenticationProvider внутри AuthenticationManager

<authentication-manager> 

    <authentication-provider ref="CustomAuthenticationProvider"/> 

</authentication-manager> 

Как это сделать с использованием класса Java Config?

+0

см. Пример для CustomerAuthenticationManager. http://stackoverflow.com/questions/31826233/custom-authentication-manager-with-spring-security-and-java-configuration –

ответ

0

Spring предлагает одну реализацию по умолчанию для AuthenticationManager, которая является ProviderManager. ProviderManager имеет конструктор, который принимает массив провайдеров аутентификации

public ProviderManager(List<AuthenticationProvider> providers) { 
    this(providers, null); 
} 

Если вы хотите, вы можете просто играть с ним, расширяя ProviderManager

public class MyAuthenticationManager extends ProviderManager implements AuthenticationManager{ 

public MyAuthenticationManager(List<AuthenticationProvider> providers) { 
    super(providers); 
    providers.forEach(e->System.out.println("Registered providers "+e.getClass().getName())); 
    } 
} 

И тогда я настройка безопасности Java вы можете добавить свой собственный менеджер аутентификации ,

@Override 
protected AuthenticationManager authenticationManager() throws Exception { 
    return new MyAuthenticationManager(Arrays.asList(new CustomAuthenticationProvider())); 
} 
Смежные вопросы