Help is available by sending an email to csf-support@mit.edu
Have any suggestion on how improve this wiki? Please give us your feedback at csf-support@mit.edu
Using X509 Application Certificates with CSF Security version 2
Using X509 Applicaiton Certificates with CSF Security requires that the following be done:
- add three new beans to your application's applicationContext spring security xml,
- add one new bean to your application's applicationContext conf xml,
- create a new allowEntities.properties file.
Each of the above is described below.
- Add the following 3 beans to your application's appicationContext spring security xml.
You many already have a filterChainProxy already defined in your security XML. If the filterChainProxy is already defined, then replace it with the filterChainProxy given below.
The ssoX509SecurityContextPersistenceFilter and the ssoX509AuthenticationProcessingFilter are new beans.
<bean id="filterChainProxy" class="org.springframework.security.web.FilterChainProxy"> <security:filter-chain-map path-type="ant"> <security:filter-chain pattern="/css/**" filters="logoutFilter" /> <security:filter-chain pattern="/images/**" filters="logoutFilter" /> <security:filter-chain pattern="/js/**" filters="logoutFilter" /> <security:filter-chain pattern="/docs/**" filters="logoutFilter" /> <security:filter-chain pattern="/**" filters="ssoX509SecurityContextPersistenceFilter, logoutFilter, ssoX509AuthenticationProcessingFilter, basicAuthenticationProcessingFilter, exceptionTranslationFilter, filterSecurityInterceptor, switchUserProcessingFilter" /> </security:filter-chain-map> </bean> <bean id="ssoX509SecurityContextPersistenceFilter" class="edu.mit.csf.security.spring.filter.SsoX509SecurityContextPersistenceFilter"/> <bean id="ssoX509AuthenticationProcessingFilter" class="edu.mit.csf.security.spring.filter.SsoX509AuthenticationProcessingFilter"> <property name="authenticationManager" ref="authenticationManager"/> <property name="allowedEntities" ref="allowedEntities"/> </bean>
- Add the following bean to your application's appicationContext conf xml.
<bean id="allowedEntities" class="edu.mit.csf.base.configuration.CompactApacheApplicationConfiguration" init-method="init"> <property name="locations"> <list> <value>file:${user.dir}/<application identifier>/allowedEntities.properties</value> <value>file:${user.home}/allowedEntities.properties</value> </list> </property> </bean>
- create a new allowEntities.properties file and place it in either the $
Unknown macro: {user.dir}/<application identifier> directory for apache/tomcat servers or in the /$Unknown macro: {user.home}for OC4J servers.