Интеграция Spring Security 4 и JSF 2

Есть ли способ интеграции Spring Security 4 (в основном для управления уровнями доступа пользователей и к каким представлениям они могут получить доступ) и JSF 2?

я нашелэта аккуратная вещь который позволяет вам смешивать Spring Boot и JSF 2 с PrimeFaces 5. Отличный материал. Я хочу посмотреть, сможешь ли ты поднять это на другой уровень.

Обычно вы настраиваете Spring Security для Spring MVC следующим образом:

WebSecurityConfig.java

@Configuration
@EnableWebMvcSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
                .authorizeRequests()
                .antMatchers("/", "/home").permitAll()
                .anyRequest().authenticated()

                .and()

                .formLogin()
                .loginPage("/login")
                .permitAll()

                .and()

                .logout()
                .permitAll();
    }

    @Autowired
    public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
        auth
                .inMemoryAuthentication()
                .withUser("Zyst").password("password").roles("USER");
    }
}

И затем те, насколько я знаю, исправят меня, если я ошибаюсь, загляните в ваш MvcConfig, чтобы увидеть, что на самом деле означает «/ home» и тому подобное:

MvcConfig.java

@Configuration
public class MvcConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addViewControllers(ViewControllerRegistry registry) {
        registry.addViewController("/home").setViewName("home");
        registry.addViewController("/").setViewName("home");
        registry.addViewController("/hello").setViewName("hello");
        registry.addViewController("/login").setViewName("login");
    }
}

Однако я несколько часов гуглю и не могу найти окончательного ответа о том, как настроить Spring Security для JSF. Можете ли вы реализовать свой интерфейс с помощью JSF, а затем сделать его управляемым Spring Security, например, ссылки, т.е. localhost: 8080 / home вместо localhost: 8080 / home.xhtml, правильно управляются и обслуживаются? И так, что пользовательские уровни определены вWebSecurityConfig.java может только получить доступ к страницам, относящимся к себе.

Из того, что я (кратко) исследовал, это может быть невозможно из-за того, что Faces и Mvc - это разные технологии, которые не особенно хорошо сочетаются друг с другом. Однако, если возможно, я бы хотел убедиться, возможно ли это или нет.

И если это возможно, можете ли вы предоставить или рабочий пример, или ссылку на что-то более глубокое? Я немного погуглил, но вполне возможно, что я что-то упустил.

Любые ответы приветствуются.

Ответы на вопрос(1)

Ваш ответ на вопрос