I've already implemented a Java Servlet Filter that consumes tokens from a PingFederate (PF) server using the PF supplied Java API. This makes my application able to serve the Service Provider application in a PF SSO setup. PingFederates API allows me to do simple things like this:
Agent agent = new Agent("agent-config.txt");
MultiMap multiUserInfo = agent.readTokenToMultiMap(request);
MultiMap will be a map of the attributes of the token, or null if no token was passed to the request parameters. All I have to do now is map the attributes to my applications User model. agent-config.txt is a file generated by PingFederate when configuring it.
Different clients are now asking for similar SSO solutions to this, but using different SAML implementations.
Do you know about a generic API that will do similar things but be able to consume tokens from more than one SAML implementation?
Does anyone开发者_开发问答 know if it's possible to use PFs API to consume tokens from other SAML implementations, such as ADFS, OpenSAML?
Sindri -
This response is probably a little late but I didn't want it to go unanswered:
PingFederate can consume SAML 1.x/2.0/WS-Federation tokens and abstract/convert them to the token format you are currently integrating your app with. So from your applications point of view, you are done coding and 95% of the work is done. You'd just need to setup a new "connection" inside of PingFederate to tell the server to consume the particular standards-based message coming from your trusted partner.
Since this is standards-based interop, PingFederate can consume messages from (or generate to) all compliant SAML 1.x/2.0/WS-Federation Identity Providers (ie, ADFSv1 &v2, OpenSAML, IBM TFIM, etc etc etc) by walking through our web-based GUI wizard.
HTH - Ian Barnett
精彩评论