This is a simple CAS Client for ColdFusion. It is based on the CAS ColdFusion Client found here:
https://wiki.jasig.org/display/CASC/ColdFusion+client+script
// ColdFusion MX 6.1 code that uses CAS 2.0
// Christian Stuck
// stuckc@rider.edu
// Westminster Choir College
// Princeton, New Jersey --->
<cflock scope="Session" type="ReadOnly" timeout="30" throwontimeout="no">
<cfset
MM_Username=Iif(IsDefined("Session.MM_Username"),"Session.MM_Username",DE(""
))>
<cfset
MM_UserAuthorization=Iif(IsDefined("Session.MM_UserAuthorization"),"Session.
MM_UserAuthorization",DE(""))>
</cflock>
<!--- // Insert name of CAS Server at your location --->
<cfset CAS_Server = "https://login.gatech.edu/cas/">
<cfset MyServer = "http://www.myserver.gatech.edu">
<!--- See if already logged on --->
<cfif MM_Username EQ "">
<!--- Check for ticket returned by CAS redirect --->
<cfset ticket=Iif(IsDefined("URL.ticket"),"URL.ticket",DE(""))>
<cfif ticket EQ "">
<!--- No session, no ticket, Redirect to CAS Logon page --->
<cfset casurl = #CAS_Server# & "login?" & "service=" & #MyServer# &
"/login.cfm">
<cflocation url="#casurl#" addtoken="no">
<cfelse>
<!--- Back from CAS, validate ticket and get userid --->
<cfset casurl = #CAS_Server# & "serviceValidate?ticket=" & #URL.ticket# &
"&" & "service=" & MyServer & "/login.cfm">
<!--- http.open("GET",url,false); // HTTP transaction to CAS server
http.send(); --->
<cfhttp url="#casurl#" method="get"></cfhttp>
<cfset objXML = xmlParse(cfhttp.filecontent)>
<cfset SearchResults = XmlSearch(objXML,
"cas:serviceResponse/cas:authenticationSuccess/cas:user")>
<cfif NOT ArrayIsEmpty(SearchResults)>
<cfset NetId = #SearchResults[1].XmlText#>
<cfelse>
<cfset casurl = #CAS_Server# & "login?" & "service=" & #MyServer# &
"/login.cfm">
<cflocation url="#casurl#" addtoken="no">
</cfif></cfif></cfif>
Welcome!<br>
<cfoutput>#NetID#</cfoutput>