UPDATE:

I have found what I was looking for.  Specifically in Spring Boot it's 
possible to add Servlets, Filters, and Listeners 
<https://docs.spring.io/spring-boot/docs/1.5.6.RELEASE/reference/htmlsingle/#boot-features-embedded-container-servlets-filters-listeners>
 outside 
of the main SpringBootApplication class.  The key was ensuring the new 
class I was creating to add the servlerts, and listeners was in the same 
package (i.e. org.apereo.cas.web) where the CasWebApplication lives since 
it's the class that has the @SpringBootApplication.  My Filter class ended 
up looking something like the following:

import org.apache.catalina.filters.HttpHeaderSecurityFilter;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.servlet.DispatcherType;


@Configuration
public class Filters {
    @Bean
    public FilterRegistrationBean httpHeaderSecurityFilter() {
        FilterRegistrationBean filterRegistrationBean = new 
FilterRegistrationBean();
        HttpHeaderSecurityFilter httpHeaderSecurityFilter = new 
HttpHeaderSecurityFilter();

        filterRegistrationBean.setName("httpHeaderSecurity");
        filterRegistrationBean.setFilter(httpHeaderSecurityFilter);
        filterRegistrationBean.addInitParameter("hstsEnabled", "false");
        
filterRegistrationBean.addInitParameter("blockContentTypeSniffingEnabled", 
"false");

        filterRegistrationBean.setAsyncSupported(true);
        filterRegistrationBean.setDispatcherTypes(DispatcherType.REQUEST);
        filterRegistrationBean.addUrlPatterns("/*");

        return filterRegistrationBean;
    }
}




On Thursday, August 31, 2017 at 2:53:39 PM UTC-6, mggardiner wrote:
>
> I am looking to add some additional security related configuration 
> settings to the Apereo CAS Server 5.1.3 via the Maven Apero CAS Server 
> overlay template.  I see where a lot of the Tomcat / Embedded servlet 
> container settings are available via properties but some are not (as far as 
> I can see).
>
> Specifically I would like to add the server.xml equivalent listeners in 
> embedded Tomcat:
>
> <Server port="@tomcat.shutdown.port@" shutdown="SHUTDOWN">
>
> <Listener className="org.apache.catalina.security.SecurityListener" 
> checkedOsUsers="ec2-user" minimumUmask="" />
>
> <Listener className="org.apache.catalina.core.AprLifecycleListener" 
> SSLEngine="on" />
>
> <Listener className="org.apache.catalina.core.JasperListener" />
>
> <Listener 
> className="org.apache.catalina.core.JreMemoryLeakPreventionListener" 
> />
>
> <Listener 
> className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" 
> />
>
> <Listener 
> className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" 
> />
>
> And the equivalent in the global web.xml:
>
> <filter>
>
>       <filter-name>httpHeaderSecurity</filter-name>
>
>       <filter-class>org.apache.catalina.filters.HttpHeaderSecurityFilter</
> filter-class>
>
>       <init-param>
>
>           <param-name>hstsEnabled</param-name>
>
>           <param-value>false</param-value>
>
>       </init-param>
>
>       <init-param>
>
>           <param-name>blockContentTypeSniffingEnabled</param-name>
>
>           <param-value>false</param-value>
>
>       </init-param>
>
>       <async-supported>true</async-supported>
>
>   </filter>
>
> <!-- The mapping for the HTTP header security Filter -->
>
>   <filter-mapping>
>
>       <filter-name>httpHeaderSecurity</filter-name>
>
>       <url-pattern>/*</url-pattern>
>
>       <dispatcher>REQUEST</dispatcher>
>
>   </filter-mapping>
>
>
> What is the recommended way of adding the above equivalent settings to an 
> embedded Tomcat instance within the Apereo CAS Server overlay template 
> based on Maven?
>
>
> Thanks.
>
>
> -Mike-
>
>
>

-- 
- Website: https://apereo.github.io/cas
- Gitter Chatroom: https://gitter.im/apereo/cas
- List Guidelines: https://goo.gl/1VRrw7
- Contributions: https://goo.gl/mh7qDG
--- 
You received this message because you are subscribed to the Google Groups "CAS 
Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/a/apereo.org/d/msgid/cas-user/21c04f68-5388-43e8-b1b7-fb1c08090ab5%40apereo.org.

Reply via email to