SlideShare a Scribd company logo
MicroServices
authentication and
authorization with
LemonLDAP::NG
Clément OUDOT – Identity Solutions Manager
clement.oudot@worteks.com
2
(v .t ks)ɔʁ ɛ
Services
Heterogeneous and complex infrastructures,
cloud, mail, authentication, security

Studies, audit and consulting

Technical expertise

Technical support

Training

R&D
Edition
Collaboration and
application portal
Mutualized platform for
development
Identity and Access
Management
Partnership
3
Single Sign On
4
Imagine SSOng
Imagine there are no passwords
Or maybe just only one
A single secured form
To access our applications
Imagine all the users
Loving security
Imagine applications
No more storing passwords
Relying on a token
Even for authorizations
Imagine all developers
Loving security
Imagine some protocols
Made by clever people
CAS, OpenID or SAML
Even WS Federation
Imagine authentication
Interoperability
You may say
I'm a hacker
But I'm not the only one
I hope one day
You will log in
Using the Single Sign On
© John Lennon
5
Authentication
Portal Application
2. Authentication
1. First access
3. Send SSO Token
Trust link
4. Validate SSO token
SSO workflow
6
Y O L O
You Only Log Once
7
LemonLDAP::NG Software
8
History
2003
2006
2010
2016
2018
Project creation
Fork – version NG
Protocols CAS, SAML
and OpenID
Version 1.0
Protocol OpenID
Connect
Second factors (2FA)
Version 2.0
9
Main features
●
Web Single Sign On
●
Access control
● Applications portal
●
Authentication modules choice and chain
●
Password management, account creation
●
Multi-factor authentication (MFA)
●
Protection of Web applications and API/WebServices
●
Graphical customisation
●
Packages for Debian/Ubuntu/RHEL/CentOS
10
Login page
11
Portal with application menu
12
Web Administration interface
13
Command Line Interface
14
Free Software
●
License GPL
●
OW2 project
●
Forge: https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng
●
Site: https://lemonldap-ng.org
●
OW2 Community Award in 2014 and 2018
●
SSO component of FusionIAM project: https://fusioniam.org/
15
Component roles
Configurations Sessions
Portal
Manager Handler
Application
menu
CAS
SAML
OpenID Connect
Self Services
SOAP/REST
server
Session
management
Configurations Sessions
Notifications Second factors
Access Control SSOaaS
Web Service
Token
Custom
16
Web application protection with Handler
Sessions
Portal
Handler
Web Application
Authentication
Session creation
Session read
SSO cookie
HTTP headers
17
Identity Federation
12/06/19 18
Main features
●
LL::NG can act as client and as server
●
Attributes sharing
●
Manage authentication contexts and levels
●
Autogeneration of public/private keys
●
Access control per services
●
Publication of configuration data (metadata)
●
Multi-protocols gateway
●
Single logout
12/06/19 19
CAS
CAS client CAS server
First access
Redirection for
authentication
Service TicketService
Ticket
Service ticket validation
Access to identity
12/06/19 20
SAML
Service Provider (SP) Identity Provider (IDP)
First access
IDP choice
Authentication
request
Authentication
responseAuthentication
response
Signature verification
Read assertion
12/06/19 21
OpenID Connect
Relying Party (RP) OpenID Provider (OP)
First access
OP choice
Authentication
request
JWT
JWT
Signature verification
Read JWT
Get UserInfo
22
API / WebService protection
12/06/19 23
How to protect a WebService
●
Global authentication:
– HTTP Basic
– SSL client certificate
●
User oriented authentication?
12/06/19 24
LL::NG ServiceToken Handler
●
New Handler "Service Token" installed between application
and WebService
●
Main Handler generates a token based on time session_id
and virtual hosts: cipher(time, session_id, vhost_list)
●
The token is sent by application to WebService
●
The Handler "Service Token" intercepts the token, validates it
and apply access rules, and sent HTTP headers to
WebService
12/06/19 25
LL::NG ServiceToken Handler
Sessions
Portal
Handler
Web Application
Authentication
Session creation
Session read
SSO cookie
HTTP headers
Token
Handler
Service Token
Web Service Token
HTTP headers
Session read
12/06/19 26
Using OAuth2
●
When LL::NG acts as OIDC provider, it delivers an OAuth2
access token
●
This access token can be validated with different operations:
– Call /oauth2/userinfo, which will return user attributes
– Call /oauth2/introspect, which will return token information
(including the token owner) – see RFC 7662
– Use LL::NG OAuth2 Handler
12/06/19 27
LL::NG OAuth2 Handler
Sessions
Portal
Web Application
Authentication
Session creation
OIDC response
Handler
OAuth2
Web Service
Access Token
HTTP headers
Session read
ID Token
Access Token
12/06/19 28
Example – UserInfo Endpoint
$ curl -k 
-H "Authorization: Bearer a74d504ec9e784785e70a1da2b95d1d2" 
https://auth.openid.club/oauth2/userinfo | json_pp
{
  "family_name" : "OUDOT",
  "name" : "Clément OUDOT",
  "email" : "clement@oodo.net",
  "sub" : "coudot"
}
12/06/19 29
Example – Intropsection Endpoint
$ curl -k 
-H "Authorization: Basic bGVtb25sZGFwOnNlY3JldA==" 
-X POST -d "token=a74d504ec9e784785e70a1da2b95d1d2" 
https://auth.openid.club/oauth2/introspect | json_pp
{
"client_id" : "lemonldap",
"sub" : "coudot",
"exp" : 1572446485,
"active" : true,
"scope" : "openid profile address email phone"
}
12/06/19 30
Example – Oauth2 Handler
$ curl -k 
-H "Authorization: Bearer a74d504ec9e784785e70a1da2b95d1d2" 
https://oauth2.openid.club/api.pl
{
"check" : "true",
"user" : "coudot"
}
31
Thanks for your
attention
More informations:
info@worteks.com
@worteks_com
linkedin.com/company/worteks

More Related Content

What's hot (20)

PPTX
SSL Certificate: Stamp of Web Security
HTS Hosting
 
PDF
OpenID Connect vs. OpenID 1 & 2
Mike Schwartz
 
PPTX
Verifiable Credentials, Self Sovereign Identity and DLTs
Vasiliy Suvorov
 
PDF
OpenID Connect - An Emperor or Just New Cloths?
Oliver Pfaff
 
PDF
2019 - Tech Talk DC - Token-based security for web applications using OAuth2 ...
Vladimir Bychkov
 
PDF
SSL Certificate and Code Signing
Li-Wei Yao
 
PDF
OpenID Connect: The new standard for connecting to your Customers, Partners, ...
Salesforce Developers
 
PDF
OpenID Connect 4 SSI (at EIC 2021)
Torsten Lodderstedt
 
PPTX
Mit 2014 introduction to open id connect and o-auth 2
Justin Richer
 
PDF
OpenID Connect 4 SSI (DIFCon F2F)
Torsten Lodderstedt
 
PDF
Masterclass on the DID Universal Resolver
Markus Sabadello
 
PDF
Technologies for Self-Sovereign Identity
Markus Sabadello
 
PDF
Decentralized Identifiers
Markus Sabadello
 
PPTX
An Authentication and Authorization Architecture for a Microservices World
VMware Tanzu
 
PPTX
Identity Management for Web Application Developers
WSO2
 
PDF
FIDO2 Specifications Overview
FIDO Alliance
 
PDF
Hyperledger Indy Platform - Privacy, Security and Power for Digital Identity ...
Gokul Alex
 
PPTX
OpenID Connect and Single Sign-On for Beginners
Salesforce Developers
 
PDF
6 Key Blockchain Features You Need to Know Now
101 Blockchains
 
PPTX
OpenID Connect 1.0 Explained
Eugene Siow
 
SSL Certificate: Stamp of Web Security
HTS Hosting
 
OpenID Connect vs. OpenID 1 & 2
Mike Schwartz
 
Verifiable Credentials, Self Sovereign Identity and DLTs
Vasiliy Suvorov
 
OpenID Connect - An Emperor or Just New Cloths?
Oliver Pfaff
 
2019 - Tech Talk DC - Token-based security for web applications using OAuth2 ...
Vladimir Bychkov
 
SSL Certificate and Code Signing
Li-Wei Yao
 
OpenID Connect: The new standard for connecting to your Customers, Partners, ...
Salesforce Developers
 
OpenID Connect 4 SSI (at EIC 2021)
Torsten Lodderstedt
 
Mit 2014 introduction to open id connect and o-auth 2
Justin Richer
 
OpenID Connect 4 SSI (DIFCon F2F)
Torsten Lodderstedt
 
Masterclass on the DID Universal Resolver
Markus Sabadello
 
Technologies for Self-Sovereign Identity
Markus Sabadello
 
Decentralized Identifiers
Markus Sabadello
 
An Authentication and Authorization Architecture for a Microservices World
VMware Tanzu
 
Identity Management for Web Application Developers
WSO2
 
FIDO2 Specifications Overview
FIDO Alliance
 
Hyperledger Indy Platform - Privacy, Security and Power for Digital Identity ...
Gokul Alex
 
OpenID Connect and Single Sign-On for Beginners
Salesforce Developers
 
6 Key Blockchain Features You Need to Know Now
101 Blockchains
 
OpenID Connect 1.0 Explained
Eugene Siow
 

Similar to #OSSPARIS19 - MicroServices authentication and authorization with LemonLDAP::NG - CLEMENT OUDOT (20)

PDF
[LDAPCon 2019] LemonLDAP::NG 2.0: Mutli-factor authentication, Identity Feder...
Worteks
 
PPTX
Single Sign On 101
Mike Schwartz
 
PPTX
Lecture 20101124
Anderson Liang
 
PDF
Introduction to SAML & OIDC
ForgeRock Identity Tech Talks
 
PPTX
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
MysoreMuleSoftMeetup
 
PPTX
Help! I Have An Identity Crisis: A look at various mechanisms of Single Sign On
Saloni Shah
 
PPTX
Presentation
Laxman Kumar
 
PDF
[FOSDEM 2019] LemonLDAP::NG 2.0
Clément OUDOT
 
PDF
[FOSDEM 2019] LemonLDAP::NG 2.0
Worteks
 
PDF
JDD2015: Security in the era of modern applications and services - Bolesław D...
PROIDEA
 
PDF
Auth experience - vol 1.0
Haggai Philip Zagury
 
PDF
OpenID Connect "101" Introduction -- October 23, 2018
OpenIDFoundation
 
PPTX
Making Sense of API Access Control
CA API Management
 
PDF
[OW2con19] LemonLDAP::NG success stories
Worteks
 
PDF
LemonLDAP::NG Success Stories presented at OW2con'19, June 12-13, Paris.
OW2
 
PDF
The “I” in API is for Identity (Nordic APIS April 2014)
Nordic APIs
 
ODP
WebSSO and Access Management with LemonLDAP::NG
Clément OUDOT
 
PDF
RMLL 2013 - The SAML Protocol: Single Sign On for skilled people
Clément OUDOT
 
PDF
“Secure Portal” or WebSphere Portal – Security with Everything
Dave Hay
 
PDF
Cloud Identity Webinar
WSO2
 
[LDAPCon 2019] LemonLDAP::NG 2.0: Mutli-factor authentication, Identity Feder...
Worteks
 
Single Sign On 101
Mike Schwartz
 
Lecture 20101124
Anderson Liang
 
Introduction to SAML & OIDC
ForgeRock Identity Tech Talks
 
Configuring Single Sign-On (SSO) via Identity Management | MuleSoft Mysore Me...
MysoreMuleSoftMeetup
 
Help! I Have An Identity Crisis: A look at various mechanisms of Single Sign On
Saloni Shah
 
Presentation
Laxman Kumar
 
[FOSDEM 2019] LemonLDAP::NG 2.0
Clément OUDOT
 
[FOSDEM 2019] LemonLDAP::NG 2.0
Worteks
 
JDD2015: Security in the era of modern applications and services - Bolesław D...
PROIDEA
 
Auth experience - vol 1.0
Haggai Philip Zagury
 
OpenID Connect "101" Introduction -- October 23, 2018
OpenIDFoundation
 
Making Sense of API Access Control
CA API Management
 
[OW2con19] LemonLDAP::NG success stories
Worteks
 
LemonLDAP::NG Success Stories presented at OW2con'19, June 12-13, Paris.
OW2
 
The “I” in API is for Identity (Nordic APIS April 2014)
Nordic APIs
 
WebSSO and Access Management with LemonLDAP::NG
Clément OUDOT
 
RMLL 2013 - The SAML Protocol: Single Sign On for skilled people
Clément OUDOT
 
“Secure Portal” or WebSphere Portal – Security with Everything
Dave Hay
 
Cloud Identity Webinar
WSO2
 
Ad

More from Paris Open Source Summit (20)

PDF
#OSSPARIS19 : Control your Embedded Linux remotely by using WebSockets - Gian...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : A virtual machine approach for microcontroller programming : th...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : RIOT: towards open source, secure DevOps on microcontroller-bas...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : The evolving (IoT) security landscape - Gianluca Varisco, Arduino
Paris Open Source Summit
 
PDF
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : Detecter des anomalies de séries temporelles à la volée avec Wa...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : Supervision d'objets connectés industriels - Eric DOANE, Zabbix
Paris Open Source Summit
 
PDF
#OSSPARIS19: Introduction to scikit-learn - Olivier Grisel, Inria
Paris Open Source Summit
 
PPTX
#OSSPARIS19 - Fostering disruptive innovation in AI with JEDI - André Loesekr...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : Comment ONLYOFFICE aide à organiser les travaux de recherches ...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : MDPH : une solution collaborative open source pour l'instructio...
Paris Open Source Summit
 
PDF
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : Publier du code Open Source dans une banque : Mission impossibl...
Paris Open Source Summit
 
PDF
#OSSPARIS19 : Libre à vous ! Raconter les libertés informatiques à la radio -...
Paris Open Source Summit
 
PDF
#OSSPARIS19 - Le logiciel libre : un enjeu politique et social - Etienne Gonn...
Paris Open Source Summit
 
PDF
#OSSPARIS19 - Conflits d’intérêt & concurrence : la place de l’éditeur dans l...
Paris Open Source Summit
 
PDF
#OSSPARIS19 - Table ronde : souveraineté des données
Paris Open Source Summit
 
PDF
#OSSPARIS19 - Comment financer un projet de logiciel libre - LUDOVIC DUBOST, ...
Paris Open Source Summit
 
PDF
#OSSPARIS19 - BlueMind v4 : les dessous technologiques de 10 ans de travail p...
Paris Open Source Summit
 
PDF
#OSSPARIS19 - Tuto de première installation de VITAM, un système d'archivage ...
Paris Open Source Summit
 
#OSSPARIS19 : Control your Embedded Linux remotely by using WebSockets - Gian...
Paris Open Source Summit
 
#OSSPARIS19 : A virtual machine approach for microcontroller programming : th...
Paris Open Source Summit
 
#OSSPARIS19 : RIOT: towards open source, secure DevOps on microcontroller-bas...
Paris Open Source Summit
 
#OSSPARIS19 : The evolving (IoT) security landscape - Gianluca Varisco, Arduino
Paris Open Source Summit
 
#OSSPARIS19: Construire des applications IoT "secure-by-design" - Thomas Gaza...
Paris Open Source Summit
 
#OSSPARIS19 : Detecter des anomalies de séries temporelles à la volée avec Wa...
Paris Open Source Summit
 
#OSSPARIS19 : Supervision d'objets connectés industriels - Eric DOANE, Zabbix
Paris Open Source Summit
 
#OSSPARIS19: Introduction to scikit-learn - Olivier Grisel, Inria
Paris Open Source Summit
 
#OSSPARIS19 - Fostering disruptive innovation in AI with JEDI - André Loesekr...
Paris Open Source Summit
 
#OSSPARIS19 : Comment ONLYOFFICE aide à organiser les travaux de recherches ...
Paris Open Source Summit
 
#OSSPARIS19 : MDPH : une solution collaborative open source pour l'instructio...
Paris Open Source Summit
 
#OSSPARIS19 - Understanding Open Source Governance - Gilles Gravier, Wipro Li...
Paris Open Source Summit
 
#OSSPARIS19 : Publier du code Open Source dans une banque : Mission impossibl...
Paris Open Source Summit
 
#OSSPARIS19 : Libre à vous ! Raconter les libertés informatiques à la radio -...
Paris Open Source Summit
 
#OSSPARIS19 - Le logiciel libre : un enjeu politique et social - Etienne Gonn...
Paris Open Source Summit
 
#OSSPARIS19 - Conflits d’intérêt & concurrence : la place de l’éditeur dans l...
Paris Open Source Summit
 
#OSSPARIS19 - Table ronde : souveraineté des données
Paris Open Source Summit
 
#OSSPARIS19 - Comment financer un projet de logiciel libre - LUDOVIC DUBOST, ...
Paris Open Source Summit
 
#OSSPARIS19 - BlueMind v4 : les dessous technologiques de 10 ans de travail p...
Paris Open Source Summit
 
#OSSPARIS19 - Tuto de première installation de VITAM, un système d'archivage ...
Paris Open Source Summit
 
Ad

Recently uploaded (20)

PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
July Patch Tuesday
Ivanti
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
LLMs.txt: Easily Control How AI Crawls Your Site
Keploy
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 

#OSSPARIS19 - MicroServices authentication and authorization with LemonLDAP::NG - CLEMENT OUDOT

  • 2. 2 (v .t ks)ɔʁ ɛ Services Heterogeneous and complex infrastructures, cloud, mail, authentication, security  Studies, audit and consulting  Technical expertise  Technical support  Training  R&D Edition Collaboration and application portal Mutualized platform for development Identity and Access Management Partnership
  • 4. 4 Imagine SSOng Imagine there are no passwords Or maybe just only one A single secured form To access our applications Imagine all the users Loving security Imagine applications No more storing passwords Relying on a token Even for authorizations Imagine all developers Loving security Imagine some protocols Made by clever people CAS, OpenID or SAML Even WS Federation Imagine authentication Interoperability You may say I'm a hacker But I'm not the only one I hope one day You will log in Using the Single Sign On © John Lennon
  • 5. 5 Authentication Portal Application 2. Authentication 1. First access 3. Send SSO Token Trust link 4. Validate SSO token SSO workflow
  • 6. 6 Y O L O You Only Log Once
  • 8. 8 History 2003 2006 2010 2016 2018 Project creation Fork – version NG Protocols CAS, SAML and OpenID Version 1.0 Protocol OpenID Connect Second factors (2FA) Version 2.0
  • 9. 9 Main features ● Web Single Sign On ● Access control ● Applications portal ● Authentication modules choice and chain ● Password management, account creation ● Multi-factor authentication (MFA) ● Protection of Web applications and API/WebServices ● Graphical customisation ● Packages for Debian/Ubuntu/RHEL/CentOS
  • 14. 14 Free Software ● License GPL ● OW2 project ● Forge: https://gitlab.ow2.org/lemonldap-ng/lemonldap-ng ● Site: https://lemonldap-ng.org ● OW2 Community Award in 2014 and 2018 ● SSO component of FusionIAM project: https://fusioniam.org/
  • 15. 15 Component roles Configurations Sessions Portal Manager Handler Application menu CAS SAML OpenID Connect Self Services SOAP/REST server Session management Configurations Sessions Notifications Second factors Access Control SSOaaS Web Service Token Custom
  • 16. 16 Web application protection with Handler Sessions Portal Handler Web Application Authentication Session creation Session read SSO cookie HTTP headers
  • 18. 12/06/19 18 Main features ● LL::NG can act as client and as server ● Attributes sharing ● Manage authentication contexts and levels ● Autogeneration of public/private keys ● Access control per services ● Publication of configuration data (metadata) ● Multi-protocols gateway ● Single logout
  • 19. 12/06/19 19 CAS CAS client CAS server First access Redirection for authentication Service TicketService Ticket Service ticket validation Access to identity
  • 20. 12/06/19 20 SAML Service Provider (SP) Identity Provider (IDP) First access IDP choice Authentication request Authentication responseAuthentication response Signature verification Read assertion
  • 21. 12/06/19 21 OpenID Connect Relying Party (RP) OpenID Provider (OP) First access OP choice Authentication request JWT JWT Signature verification Read JWT Get UserInfo
  • 22. 22 API / WebService protection
  • 23. 12/06/19 23 How to protect a WebService ● Global authentication: – HTTP Basic – SSL client certificate ● User oriented authentication?
  • 24. 12/06/19 24 LL::NG ServiceToken Handler ● New Handler "Service Token" installed between application and WebService ● Main Handler generates a token based on time session_id and virtual hosts: cipher(time, session_id, vhost_list) ● The token is sent by application to WebService ● The Handler "Service Token" intercepts the token, validates it and apply access rules, and sent HTTP headers to WebService
  • 25. 12/06/19 25 LL::NG ServiceToken Handler Sessions Portal Handler Web Application Authentication Session creation Session read SSO cookie HTTP headers Token Handler Service Token Web Service Token HTTP headers Session read
  • 26. 12/06/19 26 Using OAuth2 ● When LL::NG acts as OIDC provider, it delivers an OAuth2 access token ● This access token can be validated with different operations: – Call /oauth2/userinfo, which will return user attributes – Call /oauth2/introspect, which will return token information (including the token owner) – see RFC 7662 – Use LL::NG OAuth2 Handler
  • 27. 12/06/19 27 LL::NG OAuth2 Handler Sessions Portal Web Application Authentication Session creation OIDC response Handler OAuth2 Web Service Access Token HTTP headers Session read ID Token Access Token
  • 28. 12/06/19 28 Example – UserInfo Endpoint $ curl -k -H "Authorization: Bearer a74d504ec9e784785e70a1da2b95d1d2" https://auth.openid.club/oauth2/userinfo | json_pp {   "family_name" : "OUDOT",   "name" : "Clément OUDOT",   "email" : "[email protected]",   "sub" : "coudot" }
  • 29. 12/06/19 29 Example – Intropsection Endpoint $ curl -k -H "Authorization: Basic bGVtb25sZGFwOnNlY3JldA==" -X POST -d "token=a74d504ec9e784785e70a1da2b95d1d2" https://auth.openid.club/oauth2/introspect | json_pp { "client_id" : "lemonldap", "sub" : "coudot", "exp" : 1572446485, "active" : true, "scope" : "openid profile address email phone" }
  • 30. 12/06/19 30 Example – Oauth2 Handler $ curl -k -H "Authorization: Bearer a74d504ec9e784785e70a1da2b95d1d2" https://oauth2.openid.club/api.pl { "check" : "true", "user" : "coudot" }
  • 31. 31 Thanks for your attention More informations: [email protected] @worteks_com linkedin.com/company/worteks