I'll admit I'm not the most educated on application/session
management but I'll try and help.
When a user logs into your CF server, it creates the session,
which is only for that server. That's probably the issue you're
running into when the user jumps from one server to the next. You
might want to try using a cookie and CFTOKEN on the login (server
A) and then use the application.cfm file on server B and C to check
for the existence of the token. If it's there (in the client
cookie) then it would allow them access.
---set the application in the application.cfm page on all 3
servers to the same name---
<cfapplication name="myappname"
sessionmanagement="Yes"
clientmanagement="Yes"
SESSIONTIMEOUT=#CreateTimeSpan(1, 0, 0, 0)#
setclientcookies="yes">
---then check for the cookie value on each server as well---
<CFIF IsDefined("Cookie.CFID") AND
IsDefined("Cookie.CFTOKEN")>
<CFSET Variables.CFID_LOCAL=Cookie.CFID>
<CFSET Variables.CFTOKEN_LOCAL=Cookie.CFTOKEN>
<CFCOOKIE NAME="CFID" VALUE="#Variables.cfid_local#">
<CFCOOKIE NAME="CFTOKEN"
VALUE="#Variables.cftoken_local#">
</cfif>
There might be some yes/no variables in the session
management you can set (yes on A, no on B and C) if the above does
not work. But with the users jumping across servers, the cookie
might be the best answer for you.
Actually, I realized something. You would want to set the
setclientcookies only on server A but have B and C check for the
cookie.
Hope some of this helps.