Recently I got opportunity to configure alfresco CMS/WCM for our Intranet project. Our Intranet contains various applications so for single sign on solution we configured ja-sig cas server. Challenge was how to CASify alfresco? But believe me it's really easy once you done it. Following is the simplest possible solution to make alfresco work with CAS (Most of the part of the following entry is inherited by various sources; I am just rearranging contents according my experience.) TODO list before we start:-
* Generate self signed security certificate using keytool, because CAS works on SSL. * Make Tomcat work with SSL. * Install CAS server. * Ensure you already setup alfresco. (It will make our work a lot easy J) * Build certificate trust relation between alfresco and CAS. * Check out alfresco source code (yes we will need this too). * Download Yale's implementation of the CAS java client.
Development environment for our exercise (Make these references according your environment):-
* Developer's machine's hostname à hostname * CAS server's URL à https://hostname/cas (secure port is 443 and HTTP port is 80 so no need to explicitly mentioned in URL) * Alfresco URL à http://hostname:8080/alfresco * Alfresco installation home directory à C:\alfresco (yes I am using windows) * Alfresco tomcat directory à C:\alfresco\tomcat * HTTP and HTTPS port of the alfresco tomcat is same as provided by alfresco community edition with bundled tomcatà 8080 and 8443.
Changes in web.xml
Location à C:\alfresco\tomcat\webapps\alfresco\WEB-INF Add filter declarations