Welcome to the OpenSAML website. OpenSAML is a set of [open source] C++ & Java libraries meant to support developers working with the Security Assertion Markup Language (SAML). OpenSAML 2, the current version, supports SAML 1.0, 1.1, and 2.0. Additionally, various development groups have found the framework created to support OpenSAML 2 useful for their own work. We are in the process of integrating their code supporting WS-Addressing, WS-Security, WS-Trust and XACML. A prior release, [OpenSAML 1], supports SAML 1.0 and 1.1, but is not compatible with OpenSAML 2.
The OpenSAML libraries do not provide a complete SAML identity or service provider. If you are looking for such software you should check out the Shibboleth project instead. Also, these libraries will not teach you any of the specifications listed above. The libraries are meant solely to support individuals who have taken the time to read and understand the specifications.
Before starting you may wish to check the Frequently Asked Question.
The following projects are those that we know to be using OpenSAML. There are probably others out there floating around, if you have such a project, add it to the list.
- Shibboleth - Shibboleth provides cross-domain single sign-on and attribute-based authorization for browser users. Using the OpenSAML toolkit, Shibboleth implements the SAML 1.x browser profiles for identity and service providers.
- Globus Toolkit - The Globus Toolkit (GT) is an open source software toolkit used for building grids. The CAS component of GT issues assertions containing AuthorizationDecisionStatement elements. Other GT components (in particular, MyProxy and GridShib) are being fitted with SAML interfaces using OpenSAML.
- openLiberty Wakame - Wakame is an open source java implementation of ID-WSF 2.0 and relies heavily on java-xmltooling, java-opensaml2, and java-openws libraries for modeling, marshalling, and unmarshalling xml objects.
- SuisseID - SuisseID aims to provide a digital identity and qualified digital signature in Switzerland. The user attributes are provided by the Claim Assertion Infrastructure (CAI). The OpenSAML library is used in the SuisseID SDK/Java to integrate applications with the infrastructure.
The following organizations have provided substantial resources to the development of OpenSAML over the years.
- The Ohio State University
- Georgetown University
- NSF Middleware Initiative