SAML simple example for beginners

79,492

Solution 1

Typical SSO with SAML is something called Web SSO Profile. There are many products supporting this on the market for example OpenAM, Shibboleth, OpenSAML and Oracle Identity Federation. The specific configuration is dependant on what product you choose to use. A working example of OpenSAML that I use in my book is availible here.

On a SAML level, the SP and IDP exchanges Metadata which contain configuration information on how the SP and IDP want to communicate.

SSO is then done in four steps:

  1. SP sees that the user does not have an authenticated session.
  2. The SP redirects the user to IDP with a SAML AutnRequest as an URL parameter.
  3. The IDP authenticates the user and redirects it back to the SP with an artifact in URL parameter.
  4. The SP exchanges the Artifact for an Assertion over SOAP using a ArtifactResolveRequest to the IDP.

If you want to code this yourself in Java, you can use OpenSAML. On my blog I have many examples on how to use it.

In my book, A Guide To OpenSAML, I write alot about this

EDIT New edition of the book is out, covering OpenSAML v3

Solution 2

You can simply follow steps in this manual, which will help you create a simple SAML 2.0 federation between a local Service Provider and a public Identity Provider.

Once you set this up you can use it to follow messages sent between IDP/SP and also as an example of a SAML component built with Java + OpenSAML + Spring.

There are also many other good sources of information on SAML, like the Stefan's blog mentioned above.

Share:
79,492
user2779075
Author by

user2779075

Updated on July 09, 2022

Comments

  • user2779075
    user2779075 almost 2 years

    I am beginner to the SAML v2.0 technology and I get the theory knowledge but I didn't find any examples on Google. Can anybody provide me with a step by step example for simple "SAML for v2.0".

    1. Upto now I've gone through the theory part,i.e.., it support Single sign on and
      also I understood about the Service provider and Identity Provider .
    2. Presently I am working on Linux Environment
    3. I need basic example in step by step manner how the request is moving from user -> Identity Provider->Service Provider and how to configure the environment .
    4. Is it possible to execute the example for the SAML v2.0
    5. Is their any chance to execute SAML example in Java language,If it possible you can
      provide the example on Java also.
  • user2779075
    user2779075 over 10 years
    Hi,thank you for your response..Can any one provide step by step example of saml with its configuration.
  • Stefan Rasmusson
    Stefan Rasmusson over 10 years
    To use SAML you use some king of software that uses the SAML protocol. Are you using any software like that?
  • Sohan
    Sohan about 9 years
    Even i am looking for similar thing. I want to built my own IDP using openSAML , @Stefan can your book help me in that direction?
  • Stefan Rasmusson
    Stefan Rasmusson about 9 years
    The book gives an introduction to the library and shows lots of things that is common for IDP and Sp. But the book focuses more on Sp. I'm sure my book will be of help to you.
  • Stephen McCormick
    Stephen McCormick about 8 years
    On an android device, and they recommend no IOC for performance reasons. Is there another example of SSO on Android outside of Spring?
  • Mightian
    Mightian almost 8 years
    @StefanRasmusson any example pertaining to android
  • Stefan Rasmusson
    Stefan Rasmusson almost 8 years
    Not specifically, no
  • Stefan Rasmusson
    Stefan Rasmusson almost 8 years
    A new edition of the book is out, covering OpenSAML v3 gumroad.com/l/a-guide-to-opensaml-v3
  • Jerry
    Jerry over 7 years
    @Stefan Link to your blog is currently broken. I am completely new to this can I get a step by step instruction to implement this using java
  • Stefan Rasmusson
    Stefan Rasmusson over 7 years
    I tried the link and it seems fine, if you still cant reach is try blog.samlsecurity.com. It has much helpful posts. My book provides detailed and coherent instruction on how to build a service provider using OpenSAML
  • AlikElzin-kilaka
    AlikElzin-kilaka over 5 years
    I'm missing in the answer a real world example of how to make an SP-IDP SSO flow, which is, if I understand correctly, what the asker asked for...
  • Stefan Rasmusson
    Stefan Rasmusson over 5 years
    Problem is that most configuration is very dependant on what software you use. However I added a brief decsription of SAML metadata used for configuration and a working example of OpenSAML which I use in my book