static void addCSRFFilter(ServletContextHandler ctxHandler, Configuration conf) { restCSRFEnabled = conf.getBoolean(REST_CSRF_ENABLED_KEY, REST_CSRF_ENABLED_DEFAULT); if (restCSRFEnabled) { Map<String, String> restCsrfParams = RestCsrfPreventionFilter .getFilterParams(conf, "hbase.rest-csrf."); FilterHolder holder = new FilterHolder(); holder.setName("csrf"); holder.setClassName(RestCsrfPreventionFilter.class.getName()); holder.setInitParameters(restCsrfParams); ctxHandler.addFilter(holder, PATH_SPEC_ANY, EnumSet.allOf(DispatcherType.class)); } }
private FilterRegistration.Dynamic addFilter(String name, FilterHolder holder) { holder.setName(name); handler.getServletHandler().addFilter(holder); final FilterRegistration.Dynamic registration = holder.getRegistration(); checkDuplicateRegistration(name, filters, "filter"); return registration; }
private static FilterHolder getFilterHolder(String name, String classname, Map<String, String> parameters) { FilterHolder holder = new FilterHolder(); holder.setName(name); holder.setClassName(classname); if (parameters != null) { holder.setInitParameters(parameters); } return holder; }
private static Pair<FilterHolder, Class<? extends ServletContainer>> loginServerPrincipal( UserProvider userProvider, Configuration conf) throws Exception { Class<? extends ServletContainer> containerClass = ServletContainer.class; if (userProvider.isHadoopSecurityEnabled() && userProvider.isHBaseSecurityEnabled()) { String machineName = Strings.domainNamePointerToHostName( DNS.getDefaultHost(conf.get(REST_DNS_INTERFACE, "default"), conf.get(REST_DNS_NAMESERVER, "default"))); String keytabFilename = conf.get(REST_KEYTAB_FILE); Preconditions.checkArgument(keytabFilename != null && !keytabFilename.isEmpty(), REST_KEYTAB_FILE + " should be set if security is enabled"); String principalConfig = conf.get(REST_KERBEROS_PRINCIPAL); Preconditions.checkArgument(principalConfig != null && !principalConfig.isEmpty(), REST_KERBEROS_PRINCIPAL + " should be set if security is enabled"); userProvider.login(REST_KEYTAB_FILE, REST_KERBEROS_PRINCIPAL, machineName); if (conf.get(REST_AUTHENTICATION_TYPE) != null) { containerClass = RESTServletContainer.class; FilterHolder authFilter = new FilterHolder(); authFilter.setClassName(AuthFilter.class.getName()); authFilter.setName("AuthenticationFilter"); return new Pair<>(authFilter,containerClass); } } return new Pair<>(null, containerClass); }
/** * Config filters. * @param context Servlet context * @param filtersConfs filter confs */ public static void configFilters(ServletContextHandler context, List<FilterConfiguration> filtersConfs) { context.addFilter(corsFilterHandle(), "/*", EnumSet.allOf(DispatcherType.class)); for (FilterConfiguration filterConf : filtersConfs) { String filterName = filterConf.getFilterName(); String filterClass = filterConf.getFilterClass(); Map<String, String> filterParams = filterConf.getFilterParams(); if (filterClass != null) { FilterHolder filterHolder = new FilterHolder(); filterHolder.setClassName(filterClass); if (filterName != null) { filterHolder.setName(filterName); } else { filterHolder.setName(filterClass); } if (filterParams != null) { filterHolder.setInitParameters(filterParams); } else { filterHolder.setInitParameters(new HashMap<>()); } context.addFilter(filterHolder, "/*", EnumSet.allOf(DispatcherType.class)); } } context.addFilter(mkAccessLoggingFilterHandle(), "/*", EnumSet.allOf(DispatcherType.class)); }
cspFilter.setName(ContentSecurityPolicyFilter.class.getSimpleName()); webappContext.addFilter(cspFilter, "/*", EnumSet.allOf(DispatcherType.class));
/** * Define a filter for a context and set up default url mappings. */ public static void defineFilter(ServletContextHandler handler, String name, String classname, Map<String,String> parameters, String[] urls) { FilterHolder holder = new FilterHolder(); holder.setName(name); holder.setClassName(classname); if (parameters != null) { holder.setInitParameters(parameters); } FilterMapping fmap = new FilterMapping(); fmap.setPathSpecs(urls); fmap.setDispatches(FilterMapping.ALL); fmap.setFilterName(name); handler.getServletHandler().addFilter(holder, fmap); }
holder.setName(name); _filterHolderMap.put(name,holder); _filterHolders.add(holder);
FilterHolder holder = new FilterHolder(new MyFilter()); holder.setName("my-filter"); holder.setInitParameter("param", "a"); contextHandler.addFilter(holder, "/x", EnumSet.allOf(DispatcherType.class)); contextHandler.addFilter(holder, "*.y", EnumSet.allOf(DispatcherType.class)); contextHandler.addFilter(holder, "/z/*", EnumSet.allOf(DispatcherType.class));
public synchronized void setFilter(Filter filter) { _filter=filter; _extInstance=true; setHeldClass(filter.getClass()); if (getName()==null) setName(filter.getClass().getName()); }
public synchronized void setFilter(Filter filter) { _filter=filter; _extInstance=true; setHeldClass(filter.getClass()); if (getName()==null) setName(filter.getClass().getName()); }
public synchronized void setFilter(Filter filter) { _filter=filter; _extInstance=true; setHeldClass(filter.getClass()); if (getName()==null) setName(filter.getClass().getName()); }
public synchronized void setFilter(Filter filter) { _filter=filter; _extInstance=true; setHeldClass(filter.getClass()); if (getName()==null) setName(filter.getClass().getName()); }
protected void initRequestVectorOperations(@Nonnull ServletContextHandler contextHandler) { final FilterHolder holder = new FilterHolder(RequestVectorAwareFilter.class); holder.setName("requestVectorAware"); contextHandler.addFilter(holder, "/*", EnumSet.allOf(DispatcherType.class)); }
public synchronized void setFilter(Filter filter) { _filter=filter; _extInstance=true; setHeldClass(filter.getClass()); if (getName()==null) setName(filter.getClass().getName()); }
public synchronized void setFilter(Filter filter) { _filter=filter; _extInstance=true; setHeldClass(filter.getClass()); if (getName()==null) setName(filter.getClass().getName()); }
public synchronized void setFilter(Filter filter) { _filter=filter; _extInstance=true; setHeldClass(filter.getClass()); if (getName()==null) setName(filter.getClass().getName()); }
static void addCSRFFilter(ServletContextHandler ctxHandler, Configuration conf) { restCSRFEnabled = conf.getBoolean(REST_CSRF_ENABLED_KEY, REST_CSRF_ENABLED_DEFAULT); if (restCSRFEnabled) { Map<String, String> restCsrfParams = RestCsrfPreventionFilter .getFilterParams(conf, "hbase.rest-csrf."); FilterHolder holder = new FilterHolder(); holder.setName("csrf"); holder.setClassName(RestCsrfPreventionFilter.class.getName()); holder.setInitParameters(restCsrfParams); ctxHandler.addFilter(holder, PATH_SPEC_ANY, EnumSet.allOf(DispatcherType.class)); } }
private FilterRegistration.Dynamic addFilter(String name, FilterHolder holder) { holder.setName(name); handler.getServletHandler().addFilter(holder); final FilterRegistration.Dynamic registration = holder.getRegistration(); checkDuplicateRegistration(name, filters, "filter"); return registration; }
public void addFilter( final String pathSpec, final Filter filter ) { String name = "filter" + filterCount++; FilterMapping fm = new FilterMapping(); fm.setPathSpec( pathSpec ); fm.setFilterName( name ); FilterHolder fh = new FilterHolder( filter ); fh.setName( name ); webappContext.getServletHandler().addFilter( fh, fm ); }