Security Assertion Markup Language (SAML) can be a bit confusing to understand. At its core SAML is just a protocol with defined messages written in XML. The main purpose of SAML is to enable you to log in at one place such as a website and then jump over to another website without having to log in again. This setup is commonly called "federation".
It is similiar to OAuth. I see SAML continuing to make headroom in the enterprise space while OAuth stays strong in the consumer space. However in the future I hope these two technologies will end up playing well together.
In either case I am releasing a small Python library for generating SAML assertions. The main purpose of this is to learn SAML by doing (actually having to create an assertion gives me a good idea of the complexity of the protocol).
The library depends on M2Crypto so download and install it:
M2Crypto depends on SWIG so you might need that as well.
Once that is installed you can download my distribution of PySAML here:
Python 2.6 - Win32:
For windows you just run the executable. For unix you should run the following commands:
# cd PySAML
# python setup.py build
# python setup.by install
There are examples in the "examples" folder if you download the full source.
The whole project is available on github as well: