我正在对现有的spring项目实施ADFS支持。因为我们已经有了自己的JWT身份验证,我们希望与ADFS身份验证并行工作,所以我想实现一个新的过滤器链,它将只处理特定的API请求路径。我的意思是我想创建:
我正在使用ADFS Spring Security lib,它像这样定义过滤器链:
public abstract class SAMLWebSecurityConfigurerAdapter extends WebSecurityConfigurerAdapter {
//some code
protected final HttpSecurity samlizedConfig(final HttpSecurity http) throws Exception {
http.httpBasic().authenticationEntryPoint(samlEntryPoint())
.and()
.csrf().ignoringAntMatchers("/saml/**")
.and()
.authorizeRequests().antMatchers("/saml/**").permitAll()
.and()
.addFilterBefore(metadataGeneratorFilter(), ChannelProcessingFilter.class)
.addFilterAfter(filterChainProxy(), BasicAuthenticationFilter.class);
// store CSRF token in cookie
if (samlConfigBean().getStoreCsrfTokenInCookie()) {
http.csrf()
.csrfTokenRepository(csrfTokenRepository())
.and()
.addFilterAfter(new CsrfHeaderFilter(), CsrfFilter.class);
}
return http;
}
}
我扩展了这个类:
@EnableWebSecurity
@Configuration
@Order(15)
@RequiredArgsConstructor
public class ADFSSecurityConfiguration extends SAMLWebSecurityConfigurerAdapter {
@Override
protected void configure(final HttpSecurity http) throws Exception {
samlizedConfig(http)
.authorizeRequests()
.antMatchers("/adfs")
.authenticated();
}
}
但在调试时,我看到这个新的过滤器链被设置为匹配“any”请求。所以我可能把匹配器设置错了。
事实上,在阅读了官方文档后,答案很简单:(请参阅“创建和定制过滤链”一节)
@Override
protected void configure(final HttpSecurity http) throws Exception {
samlizedConfig(http)
.antMatcher("/adfs/**");
}
它不应放在<代码>之后。authorizeRequests()但在第一个匹配器上出现问题。
我正在使用这个环境: Spring 4.0.5 Spring security 3.2.4 在我的环境中,我有一个SSO系统,我需要在这个系统中集成我的web应用程序。这个系统是私人产品。SSO机制的最终结果是在请求头中放置一个参数。所以我在申请中应该做的是: null 此场景类似于CAS集成场景;所以我从CAS集成着手;我写了我的自定义过滤器,我写了我的自定义入口点和处理请求所需的所有其他类,但
问题内容: 我需要按类别过滤项目列表。我希望用户能够单击一个按钮,然后将过滤器应用于列表。 目前,我已经在一定程度上进行了这项工作。 举例来说,我有一个电影列表,如下所示: 我还有一个电影流派列表(渲染为按钮,单击该按钮将过滤电影列表),如下所示: (“ changeGenre()”函数所做的全部工作就是更新范围,以显示当前正在查看的流派)。 现在这个方法可以正常工作,直到我遇到两种类型的情况:“
我已将过滤器配置如下,但在Spring Security Filter链之前不会调用它。我已将顺序设置为零 我使用的是Spring Boot 1.3,它支持在过滤器上设置顺序
我在ES中有一个多匹配查询,希望添加一个过滤器。 添加此筛选器的语法是什么? 我试过:
还有,如果真的要给出另一个模式,“/restful/**”不是更好吗?因为“/**”将匹配与“/RESTFUL/**”不匹配的URL,因此不由此筛选器链处理。
问题内容: 我正在尝试找出使用TypeScript创建自定义角度过滤器的最佳方法。 我看到的所有代码示例都使用类似以下内容的代码: …可以,但是由于我想将所有过滤器代码分开而显得有些混乱。所以我想知道如何将过滤器声明为一个单独的文件(例如,filters / reverse- filter.ts),这样我就可以创建它: …以与控制器,服务等相同的方式 TS和Angular的文档在地面上似乎很薄,尤