我有一个带有泽西 ContainerRequestFilter 的现有项目,用于安全检查的REST服务。另外,我必须从Keycloak添加一个Javax Servlet过滤器,其代码不应更改,以进行安全检查。
这两个过滤器都应该用于平滑集成,因此如果其中一个有效,或者两者都有效,请求应该通过。就像布尔' OR Conjunction'
web.xml
<filter>
<filter-name>Keycloak Filter</filter-name>
<filter-class>org.keycloak.adapters.servlet.KeycloakOIDCFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Keycloak Filter</filter-name>
<url-pattern>/keycloak/*</url-pattern>
<url-pattern>/rest/*</url-pattern>
</filter-mapping>
现有 ContainerRequestFilter
@Provider
@Priority(Priorities.AUTHENTICATION)
public class SecurityFilter implements ContainerRequestFilter { ... }
使用此配置,首先触发Keycloak过滤器,如果失败,将永远不会调用SecurityFilter。
如何链接&#39; OR连接&#39; Keycloak过滤器中的无需编码甚至可能没有在SecurityFilter中编码?