Integration von Spring Security 4 und JSF 2

Gibt es eine Möglichkeit, Spring Security 4 (hauptsächlich zum Verwalten der Benutzerzugriffsebenen und der Ansichten, auf die sie zugreifen können) und JSF 2 zu integrieren?

Ich fanddieses nette Ding, mit dem Sie sowohl Spring Boot als auch JSF 2 mit PrimeFaces 5 mischen können. Ich möchte sehen, ob du es auf eine andere Ebene bringen kannst.

Normalerweise würden Sie Spring Security für Spring MVC folgendermaßen konfigurieren:

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");
    }
}

Und dann würden die, soweit ich weiß, mich korrigieren, wenn ich mich irre, in deiner MvcConfig nachsehen, was es eigentlich mit "/ home" und dergleichen bedeutet:

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");
    }
}

Ich habe jedoch einige Stunden lang gegoogelt und kann keine schlüssige Antwort auf die Konfiguration von Spring Security für JSF finden. Können Sie Ihr Front-End mithilfe von JSF implementieren und dann von Spring Security verwalten lassen, sodass beispielsweise Links, dh localhost: 8080 / home anstelle von localhost: 8080 / home.xhtml, ordnungsgemäß verwaltet und bereitgestellt werden? Und damit die in @ definierten BenutzerebenWebSecurityConfig.java kann nur auf Seiten zugreifen, die für sich selbst relevant sind.

Von dem, was ich (kurz) untersucht habe, ist dies möglicherweise nicht möglich, da es sich bei Faces und Mvc um unterschiedliche Technologien handelt, die nicht besonders gut zusammenspielen. Wenn möglich, möchte ich jedoch prüfen, ob dies möglich ist oder nicht.

Und wenn dies möglich ist, können Sie entweder ein funktionierendes Beispiel oder einen Link zu einem weiterführenden Thema bereitstellen? Ich habe einiges googelt, aber es ist zu 100% möglich, dass mir etwas entgangen ist.

Any und alle Antworten werden sehr geschätzt.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage