Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Single Sign On with OAuth and OpenID

Single Sign On with OAuth and OpenID

CEOS WGISS 36 - Frascati, Italy - 2013.09.19

Single Sign On with OAuth and OpenID used for Kalideos project and to be used within the French Land Surface Thematic Center

Keywords: oauth, openid, sso

Jérôme Gasperi

September 19, 2013
Tweet

More Decks by Jérôme Gasperi

Other Decks in Technology

Transcript

  1. Jérôme Gasperi Single Sign On with OAuth and OpenID WGISS-36

    ESA/ESRIN - Frascati, Italy - September 19th, 2013
  2. OpenID is an open standard for authentication. Model is based

    on confidence links between Service Providers and Authentication Providers (i.e. OpenID providers) to achieve Single Sign On authentication
  3. OAuth is an open standard for authorization. It provides a

    method for clients to access server resources on behalf of a resource owner
  4. OAuth is an open standard for authorization. It provides a

    method for clients to access server resources on behalf of a resource owner etc...
  5. Experiment Filter access to Kalideos (i.e. SPOT) data through a

    secured WMS server using OpenID Connect (i.e. OpenID over OAuth)
  6. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 3. Authentication with OAuth (OpenID Connect) 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session
  7. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  8. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  9. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 3. Authentication with OAuth (OpenID Connect) 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session
  10. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 3. Authentication with OAuth (OpenID Connect) 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session
  11. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  12. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  13. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  14. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  15. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  16. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  17. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  18. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  19. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  20. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)
  21. Kalideos Server Identity Server LDAP WMS Server 1. Ask for

    authentication 2. Redirect to Identity Server 5. Send OAuth token 6. Get user information using OAuth token 10. Return user information 9. Send OAuth token for validation and get user information 7. Return user information 4. Return OAuth token 8. Send OAuth token 14. Ask for WMS feed 15. Return WMS feed 11. Ask for user rights 12. Get user rights 13. Create user session 3. Authentication with OAuth (OpenID Connect)