Thanks for the quick reply!
It seems to me that the most promising approach is to use an SSO framework like CAS or SiteMinder over /alfresco/wcservlet.
The standard /alfresco/service web script servlet uses HTTP Basic authentication which means we need to pass the username and password in the authentication headers, which is not an option for us. Firstly we don't have access to the password, since it is held in LDAP. Secondly I don't know how to pass the credentials in a hyperlink or browser redirect. (The user is not already authenticated when the webscript URL is called)
With CAS the first hurdle is that the authentication of /alfresco/wcservlet, is not done with servlet filters but inside the servlet code, so it must work differently from the standard web client authentication which does use filters. My first attempt at implementing CAS works fine for the web client, but not for /alfresco/wcservice. I think it may be that the processing of the web client login page adds some extra information into the session which is not added by the authentication filters.
So my follow up question is, is there any more information available on wcservice authentication and if so, where?
Also, is there any source code or documentation about the liferay SSO solution?
thanks!