@Override public void onClick(AjaxRequestTarget target) { //create a new config class and instantiate the page // TODO, switch between ServiceLoginFilter/HtmlLogin SecurityFilterChainPage newPage = new SecurityVariableFilterChainPage(new ServiceLoginFilterChain(), SecurityFilterChainsPanel.this.secMgrConfig,true); newPage.setReturnPage(getPage()); setResponsePage(newPage); } }.setEnabled(isAdmin));
ServiceLoginFilterChain chain = new ServiceLoginFilterChain(); filterChain.getRequestChains().add(chain); chain.setName(chainName); chain.getPatterns().add("/**"); chain.setDisabled(true); validator.validateManagerConfig(config, new SecurityManagerConfig()); chain.setDisabled(false); chain.getFilterNames().add(unknownFilter); chain.setRoleFilterName("XX"); try { validator.validateManagerConfig(config, new SecurityManagerConfig()); chain.setRoleFilterName(GeoServerSecurityFilterChain.ROLE_FILTER); chain.getFilterNames().add(0, GeoServerSecurityFilterChain.ANONYMOUS_FILTER); try { validator.validateManagerConfig(config, new SecurityManagerConfig()); chain.getFilterNames().remove(GeoServerSecurityFilterChain.ANONYMOUS_FILTER); chain.getFilterNames().add(GeoServerSecurityFilterChain.ANONYMOUS_FILTER); chain.getFilterNames().remove(unknownFilter); chain.getFilterNames().add(0, GeoServerSecurityFilterChain.ROLE_FILTER); chain.getFilterNames().remove(GeoServerSecurityFilterChain.ROLE_FILTER); chain.getFilterNames().add(0, GeoServerSecurityFilterChain.FORM_LOGIN_FILTER);
@Override public void onClick(AjaxRequestTarget target) { // create a new config class and instantiate the page // TODO, switch between ServiceLoginFilter/HtmlLogin SecurityFilterChainPage newPage = new SecurityVariableFilterChainPage( new ServiceLoginFilterChain(), SecurityFilterChainsPanel.this.secMgrConfig, true); newPage.setReturnPage(getPage()); setResponsePage(newPage); } }.setEnabled(isAdmin));
@Test public void testMacherWithQueryString() { VariableFilterChain chain = new ServiceLoginFilterChain("/wms/**|.*request=getcapabilities.*"); RequestMatcher matcher = proxy.matcherForChain(chain); chain = new ServiceLoginFilterChain("/wms/**|(?=.*request=getmap)(?=.*format=image/png).*"); matcher = proxy.matcherForChain(chain); chain = new ServiceLoginFilterChain("/wms/**|(?=.*request=getmap)(?!.*format=image/png).*"); matcher = proxy.matcherForChain(chain); assertTrue(
@Test public void testMacher() { VariableFilterChain chain = new ServiceLoginFilterChain("/**"); RequestMatcher matcher = proxy.matcherForChain(chain); assertTrue(matcher.matches(createRequest(HTTPMethod.GET, "/wms"))); chain = new ServiceLoginFilterChain("/**"); chain.getHttpMethods().add(HTTPMethod.GET); chain.getHttpMethods().add(HTTPMethod.POST); assertFalse(matcher.matches(createRequest(HTTPMethod.PUT, "/wms"))); chain = new ServiceLoginFilterChain("/wfs/**,/web/**"); matcher = proxy.matcherForChain(chain);