Как настроить аутентификацию пользователя вручную с помощью Spring boot Security - PullRequest
0 голосов
/ 09 ноября 2018

Я создал загрузочное приложение Spring с единой регистрацией. Я использовал файл saml.xml для этого. После входа в систему SSO я вызвал getAuthentication() метод, он вернет annonymousUser каждый раз. Я хочу получить SSO Logged User детали.

Principal principal = 
        SecurityContextHolder.getContext().getAuthentication();

Класс конфигурации безопасности выглядит следующим образом:

@EnableWebSecurity
@Configuration
public class SecurityConfig extends WebSecurityConfigurerAdapter {

@Override
protected void configure(HttpSecurity http) throws Exception {
    http.authorizeRequests().antMatchers("/actuator").authenticated();
    http.headers().cacheControl().disable();
    http.csrf().disable();
    http.logout().logoutSuccessUrl("/assets/logout.html");
}
}

1 Ответ

0 голосов
/ 09 ноября 2018

Пользователь может войти в систему безопасности Spring, как показано ниже.

public void login(HttpServletRequest req, String user, String pass) { 
    UsernamePasswordAuthenticationToken authReq
      = new UsernamePasswordAuthenticationToken(user, pass);
    Authentication auth = authManager.authenticate(authReq);

    SecurityContext sc = SecurityContextHolder.getContext();
    sc.setAuthentication(auth);
    HttpSession session = req.getSession(true);
    session.setAttribute(SPRING_SECURITY_CONTEXT_KEY, sc);
}

См. ручная установка-аутентификация-пользователя-защита-пружина

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...