У нас есть наше весеннее загрузочное веб-приложение, которое использует SAML для входа в систему.Вот как выглядит наш authconfigurer
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests().antMatchers("/saml*").permitAll().anyRequest().authenticated().and().apply(saml())
.serviceProvider().keyStore()
.storeFilePath("file://" + System.getProperty("user.dir") + "/" + this.sslResource.getKeyStore())
.password(this.sslResource.getKeyStorePassword()).keyname(this.sslResource.getKeyAlias())
.keyPassword(this.sslResource.getKeyStorePassword()).and().protocol(this.serverResource.getProtocol())
.hostname(String.format("%s:%s", this.serverResource.getHostname(), this.serverResource.getPort()))
.basePath(this.servletResource.getContextPath()).and().identityProvider()
.metadataFilePath(samlMetadataUrl);
}
Мы используем Spring SAML DSL для написания этой конфигурации.
Как только пользователь входит в систему, мы должны проверить, авторизован ли пользователь для доступа к нашему приложению.Как мы можем добавить эту дополнительную проверку, прежде чем Spring Saml аутентифицирует этого пользователя?