<?xml version="1.0"?>
<xml>
      <title>Integrating Cascade with Single Sign-On</title>
<keywords/>
<description/>
      <meta content="text/xml;" http-equiv="Content-Type"/>
<main-content>
   <system-data-structure><datetime>1177354800000</datetime><author><path>/</path></author><body-content><p>As you may already know, <a href="http://hannonhill.com/products/cascade-server/index.html" target="_blank">Cascade Server</a> offers several different methods of authenticating users, including LDAP and native user authentication. However, with the usage of single sign-on (<a href="http://en.wikipedia.org/wiki/Single_sign_on" target="_blank">SSO</a>) software such as <a href="http://www.ja-sig.org/products/cas/" target="_blank">CAS</a> and <a href="http://web.mit.edu/Kerberos/" target="_blank">Kerberos</a> on the rise, prospective clients are increasingly interested in Cascade Server&#39;s ability to integrate with various third-party authentication frameworks. In fact, Cascade does have the capability to integrate with these types of solutions using what is known as a &quot;custom authentication plug-in.&quot; This plug-in is a Java class, or set of classes, that handles the CMS&#39;s end of the custom authentication lifecycle.</p>
<p>Typically, the custom authentication lifecycle for Cascade Server goes something like this:</p>
<p>1. The user accesses the CMS at a particular URL.</p>
<p>2. The CMS redirects the user&#39;s browser to an external login page, appending some extra information used to forward the user back to the CMS&#39;s custom authentication service URL.</p>
<p>3. The user logs in to said external service. If authentication fails, the user remains at the external login until successful.</p>
<p>4. Once authentication succeeds, the external service sends the user back to the CMS&#39;s custom authentication URL, appending a &quot;ticket.&quot;</p>
<p>5. The CMS contacts the external authentication service, using the ticket to verify that authentication was successful.</p>
<p>6. The external service returns a response notifying the CMS which user logged in.</p>
<p>7. Cascade logs the user in and establishes a session for the authenticated user.</p>
<p>In addition to the custom login procedure, the plug-in can also redirect the user to a particular page upon logout.</p>
<p>Thus, the plug-in class simply handles browser redirection based upon the authentication phase (login/logout) and the authentication of the user against the third-party service. The plug-in class and any supporting classes are packaged in a separate JAR archive that is deployed to a client CMS&#39;s classpath (along with Cascade&#39;s authentication API JAR and any other necessary libraries). Finally, an authentication configuration file is placed in the client&#39;s Cascade Server installation directory. This file specifies the plug-in class to be used when authenticating users into the CMS.</p>
<p>You can find detailed instructions for developing your own custom authentication plug-ins on our <a href="http://hannonhill.com/kb/current/users-guide/install/authentication/custom-authentication/user-auth.html" target="_blank">knowledge base</a>.</p>
<p>Hannon Hill&#39;s <a href="http://hannonhill.com/services/consulting.html" target="_blank">Professional Services</a> team also develops plug-ins for clients on a regular basis. So, even if you don&#39;t currently have the resources to implement custom authentication for your particular framework, you&#39;re still in luck. Please feel free to <a href="http://hannonhill.com/company/contact-us.html" target="_blank">contact us</a> for more information.</p></body-content><graphic><path>/</path></graphic><podcast><content/><path>/internet/files/podcasts/2007/40_integrating_cascade_with_single_sign-on.mp3</path><name>40_integrating_cascade_with_single_sign-on.mp3</name><display-name>Integrating Cascade With Single Sign-On</display-name><title>Integrating Cascade With Single Sign-On</title><keywords>hannon hill, content management, cascade server, custom authentication, single sign-on. custom authentication plug-in</keywords><author>Sean Sawyer</author></podcast><related-page><path>/</path></related-page><category>Resources</category></system-data-structure>
</main-content>
<copyright>
    
</copyright>
</xml>