Trying to figure out how to dance with Shibboleth, CAS, Liferay and CXF Web Services
Baptiste Grenier
bgrenier at maatg.fr
Fri Jan 11 06:18:04 EST 2013
Hi folks,
We have the following working, proof of concept, infrastructure:
- A Liferay server with filters acting as a SP
- A CAS server returning a SAML assertion
- A Shibboleth IdP using the CAS server for authentication and reading
attributes from the SAML assertion and sending attributes back to the
SP in a new assertion
This seems to be working as expected, users are redirected to the CAS
server and in Liferay we can use the attributes from the SAML returned
by the IdP.
We also have CXF Web Services using WS-Security and asking for a valid
SAML ticket and we want to query those Web Services from a
Liferay-deployed portlet.
We tried to store the SAML assertion returned by the IdP in the user
profile and use it to query the Web Service, it works but as the SAML is
short-lived it is problematic.
We checked what can be done and we found different possibilities:
- having a non-expiring/long-lived SAML ticket
- making the SP/WS client renew the stored SAML ticket
- forging a SAML ticket from the Liferay portlet code (using some sort
of delegation based on the SAML returned by the IdP or from scratch)
- using ECP profile
ECP [1][2] seems to be the preferable/standard way to go, but I have
trouble understanding how to "ideally" glue all the pieces together in
such a scenario/architecture. If I understand correctly, with ECP the
CXF Web Services would have to act like a SP and interact with the IdP
instead of using WS Security. CXF is also providing a tomcat plugin for
Relying Party integration [3] with their Fediz federation [4].
We also plan to support IdPs from external providers and I fear that ECP
might not be supported...
What approach seems the more robust/straight forward?
Thanks for any hints or advice!
Refs:
[1] - https://wiki.shibboleth.net/confluence/display/SHIB2/ECP
[2] - https://spaces.internet2.edu/display/ShibuPortal/Home
[3] - http://cxf.apache.org/fediz-tomcat.html
[4] - http://cxf.apache.org/fediz-architecture.html
Best,
Baptiste
--
Baptiste Grenier Maat-G Software architect/developer
http://www.maatg.com Mobile: +33 786 341 687
More information about the users
mailing list