SlideShare a Scribd company logo
1 of 19
Download to read offline
Open-Source Web-SSO of the french
         administrations
What is « Gendarmerie Nationale »
                     4300 agencies
                 ●

                     (300 overseas)
                     105000 users
                 ●


                     1 private network
                 ●

                     connecting all
                     agencies
                     2 datacenters
                 ●
What is Lemonldap::NG
    A powerful distributed Web-SSO system :
●


        an assembly of well tested open-source libraries
    ●


        based on ModPerl API to run inside Apache
    ●



    It centrally manages authentication, user's
●

    attributes propagation and access control
    It includes a sophisticated access rights
●

    management
History of the project
    2002 : First Web-SSO launched on the Gendarmerie's network
●


    2003 : Lemonldap developed by the Ministry of finance
●


    2004 : Studies to replace existing Gendarmerie's Web-SSO
●


    2005 : Lemonldap::NG developped and deployed by
●

    Gendarmerie
    2006 : Lemonldap::NG is chosen by Feder-Id project to
●

    become a Liberty-Alliance Service Provider
    2009 : Gendarmerie is funding the SAML-2 extension
●
Lemonldap::NG on the
               Gendarmerie's network
    105.000 users
●


    average of 40,000 sessions at the same time
●


    about 100 protected applications (98% of the whole)
●

    among which :
        all specific applications (J2EE and PHP)
    ●


        SAP
    ●


        Fudforum
    ●


        Mediawiki
    ●


        Sympa management interface
    ●


        Nagios (all applications based on Apache htaccess)
    ●


        ...
    ●
Feedback and use cases
Double cookie
    Separated protection for HTTP and HTTPS
●

    connections, so that less secured applications
    don't weaken the other ones
    POST / HTTP/1.1
    Host: authentification.gendarmerie.fr

    HTTP/1.x 200 OK
    Date: Tue, 24 Mar 2009 14:18:08 GMT
    Server: Apache
    Set­Proxy­Cookie: lmproxy=4c640e7ff9450bd3cc65c069f3fa920e; 
                      domain=gendarmerie.fr; path=/
    Set­Cookie: lemonldap=d8a6a10a88bcfcdddd4906ad55119ad2; 
                      domain=gendarmerie.fr; path=/; secure
    Set­Cookie: lemonldaphttp=ae92a75d4c15dd3d5eae40ce386594e7; 
                      domain=gendarmerie.fr; path=/
    ...
Internet authentication
    « Proxy-Cookie » enables the Single-Sign-On
●

    to control the access to Internet

    POST / HTTP/1.1
    Host: authentification.gendarmerie.fr

    HTTP/1.x 200 OK
    Date: Tue, 24 Mar 2009 14:18:08 GMT
    Server: Apache
    Set­Proxy­Cookie: lmproxy=4c640e7ff9450bd3cc65c069f3fa920e; 
                      domain=gendarmerie.fr; path=/
    Set­Cookie: lemonldap=d8a6a10a88bcfcdddd4906ad55119ad2; 
                      domain=gendarmerie.fr; path=/; secure
    Set­Cookie: lemonldaphttp=ae92a75d4c15dd3d5eae40ce386594e7; 
                      domain=gendarmerie.fr; path=/
    ...
Internet authentication
Performances
    Overhead of 3ms per hit
●


    Average of 40.000 sessions at the same time
●


    servers can check more than 3000 queries by
●

    minutes without any slowdown
Session Explorer
Development environment
    Principles :
●


        developers must have a valid account (the « real
    ●

        user's account »)
        they can choose any other account (the « spoofed
    ●

        user's account ») to test access control
        accounting and access rules involve both spoofed
    ●

        user's and real user's attributes
Login form
Session Explorer




       Accounting is done
       with both identities
       (spoofed user's /
       real user's)
Sharing authentication with remote
           applications
    Extending the core environment with additional
●

    features to enable sharing of authentication
    with remote applications :
        only a short list of attributes is exported to remote
    ●

        applications
Principles
Client-Server over HTTP
    Lemonldap::NG provides 2 ways to control
●

    access from non-browser clients :
        SOAP authentication : the client gets a cookie with
    ●

        a SOAP request, then uses the cookie as a normal
        browser
        HTTP Auth-Basic authentication : the application is
    ●

        protected by an agent (handler) which requests the
        portal by SOAP using user/password transmitted by
        the client (by Auth-Basic mechanism) :
            authorization still uses Lemonldap::NG rules
        –
Conclusion
    Cost of the project (for the Gendarmerie) :
●


        4 servers
    ●


        4 months of work for 1 developper
    ●



    Result :
●


        a flexible and suitable solution
    ●
Any questions ?

More Related Content

What's hot

Http Proxy Server
Http Proxy ServerHttp Proxy Server
Http Proxy ServerSourav Roy
 
Advantages of proxy server
Advantages of proxy serverAdvantages of proxy server
Advantages of proxy servergreatbury
 
Group18_Awesome4some:Proxy server.ppt
Group18_Awesome4some:Proxy server.pptGroup18_Awesome4some:Proxy server.ppt
Group18_Awesome4some:Proxy server.pptAnitha Selvan
 
Firewall with proxy server.
Firewall with proxy server.Firewall with proxy server.
Firewall with proxy server.stableproxies
 
Introductiontowebarchitecture 090922221506-phpapp01
Introductiontowebarchitecture 090922221506-phpapp01Introductiontowebarchitecture 090922221506-phpapp01
Introductiontowebarchitecture 090922221506-phpapp01Maisha Price
 
Proxy servers
Proxy serversProxy servers
Proxy serversKumar
 
Real-time applications with sockets and websockets. Introduction to Smartfoxs...
Real-time applications with sockets and websockets. Introduction to Smartfoxs...Real-time applications with sockets and websockets. Introduction to Smartfoxs...
Real-time applications with sockets and websockets. Introduction to Smartfoxs...Pablo Monterde Perez
 
SOAP--Simple Object Access Protocol
SOAP--Simple Object Access ProtocolSOAP--Simple Object Access Protocol
SOAP--Simple Object Access ProtocolMasud Rahman
 
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)Dave Bost
 
Firewall & Proxy Server
Firewall & Proxy ServerFirewall & Proxy Server
Firewall & Proxy ServerLakshyaArora12
 
Silverlight 2
Silverlight 2Silverlight 2
Silverlight 2Dave Bost
 
Wso2 esb-maintenance-guide
Wso2 esb-maintenance-guideWso2 esb-maintenance-guide
Wso2 esb-maintenance-guideChanaka Fernando
 
Developing Revolutionary Web Applications using Comet and Ajax Push
Developing Revolutionary Web Applications using Comet and Ajax PushDeveloping Revolutionary Web Applications using Comet and Ajax Push
Developing Revolutionary Web Applications using Comet and Ajax PushDoris Chen
 

What's hot (20)

Http Proxy Server
Http Proxy ServerHttp Proxy Server
Http Proxy Server
 
Advantages of proxy server
Advantages of proxy serverAdvantages of proxy server
Advantages of proxy server
 
Proxy Presentation
Proxy PresentationProxy Presentation
Proxy Presentation
 
Group18_Awesome4some:Proxy server.ppt
Group18_Awesome4some:Proxy server.pptGroup18_Awesome4some:Proxy server.ppt
Group18_Awesome4some:Proxy server.ppt
 
Proxy server
Proxy serverProxy server
Proxy server
 
Firewall with proxy server.
Firewall with proxy server.Firewall with proxy server.
Firewall with proxy server.
 
Introductiontowebarchitecture 090922221506-phpapp01
Introductiontowebarchitecture 090922221506-phpapp01Introductiontowebarchitecture 090922221506-phpapp01
Introductiontowebarchitecture 090922221506-phpapp01
 
Proxy server
Proxy serverProxy server
Proxy server
 
Proxy servers
Proxy serversProxy servers
Proxy servers
 
Real-time applications with sockets and websockets. Introduction to Smartfoxs...
Real-time applications with sockets and websockets. Introduction to Smartfoxs...Real-time applications with sockets and websockets. Introduction to Smartfoxs...
Real-time applications with sockets and websockets. Introduction to Smartfoxs...
 
SOAP--Simple Object Access Protocol
SOAP--Simple Object Access ProtocolSOAP--Simple Object Access Protocol
SOAP--Simple Object Access Protocol
 
Web Proxy Server
Web Proxy ServerWeb Proxy Server
Web Proxy Server
 
Cc proxy
Cc proxyCc proxy
Cc proxy
 
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
ASP.NET 3.5 SP1 (VSLive San Francisco 2009)
 
Firewall & Proxy Server
Firewall & Proxy ServerFirewall & Proxy Server
Firewall & Proxy Server
 
Proxy
ProxyProxy
Proxy
 
Proxy Servers
Proxy ServersProxy Servers
Proxy Servers
 
Silverlight 2
Silverlight 2Silverlight 2
Silverlight 2
 
Wso2 esb-maintenance-guide
Wso2 esb-maintenance-guideWso2 esb-maintenance-guide
Wso2 esb-maintenance-guide
 
Developing Revolutionary Web Applications using Comet and Ajax Push
Developing Revolutionary Web Applications using Comet and Ajax PushDeveloping Revolutionary Web Applications using Comet and Ajax Push
Developing Revolutionary Web Applications using Comet and Ajax Push
 

Similar to Lemonldap::NG, open-source Web-SSO of the french administrations

[LDAPCon 2015] The OpenID Connect Protocol
[LDAPCon 2015] The OpenID Connect Protocol[LDAPCon 2015] The OpenID Connect Protocol
[LDAPCon 2015] The OpenID Connect ProtocolClément OUDOT
 
network-management Web base.ppt
network-management Web base.pptnetwork-management Web base.ppt
network-management Web base.pptAssadLeo1
 
Comodo my dlp_techpresentation_060615_v3
Comodo my dlp_techpresentation_060615_v3Comodo my dlp_techpresentation_060615_v3
Comodo my dlp_techpresentation_060615_v3Truong Minh Yen
 
Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...
Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...
Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...SBWebinars
 
The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...
The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...
The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...Eric Vanderburg
 
Free NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings rightFree NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings rightManageEngine, Zoho Corporation
 
NetFlow Analyzer Training Part I: Getting the initial settings right
NetFlow Analyzer Training Part I: Getting the initial settings rightNetFlow Analyzer Training Part I: Getting the initial settings right
NetFlow Analyzer Training Part I: Getting the initial settings rightManageEngine, Zoho Corporation
 
OSMC 2009 | net-snmp: The forgotten classic by Dr. Michael Schwartzkopff
OSMC 2009 | net-snmp: The forgotten classic by Dr. Michael SchwartzkopffOSMC 2009 | net-snmp: The forgotten classic by Dr. Michael Schwartzkopff
OSMC 2009 | net-snmp: The forgotten classic by Dr. Michael SchwartzkopffNETWAYS
 
Export flows, group traffic, map application traffic and more: NetFlow Analyz...
Export flows, group traffic, map application traffic and more: NetFlow Analyz...Export flows, group traffic, map application traffic and more: NetFlow Analyz...
Export flows, group traffic, map application traffic and more: NetFlow Analyz...ManageEngine, Zoho Corporation
 
OpManager-Overview-30-9-14.pdf
OpManager-Overview-30-9-14.pdfOpManager-Overview-30-9-14.pdf
OpManager-Overview-30-9-14.pdfssusera181ef
 
amrapali builders@@@hacking d link routers with hnap.pdf
amrapali builders@@@hacking d link routers with hnap.pdfamrapali builders@@@hacking d link routers with hnap.pdf
amrapali builders@@@hacking d link routers with hnap.pdfamrapalibuildersreviews
 
The missing signalling layer for WebRTC
The missing signalling layer for WebRTCThe missing signalling layer for WebRTC
The missing signalling layer for WebRTCWebRTCConferenceJapan
 
RedIRIS Identity Service latest news and developments - Jamie Perez
  RedIRIS Identity Service latest news and developments - Jamie Perez  RedIRIS Identity Service latest news and developments - Jamie Perez
RedIRIS Identity Service latest news and developments - Jamie PerezEduserv
 
HAProxy as Egress Controller
HAProxy as Egress ControllerHAProxy as Egress Controller
HAProxy as Egress ControllerJulien Pivotto
 
Martin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -finalMartin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -finalPacSecJP
 
Ce hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologiesCe hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologiesVi Tính Hoàng Nam
 
Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...
Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...
Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...mfrancis
 
[OSSParis 2015] The OpenID Connect Protocol
[OSSParis 2015] The OpenID Connect Protocol[OSSParis 2015] The OpenID Connect Protocol
[OSSParis 2015] The OpenID Connect ProtocolClément OUDOT
 

Similar to Lemonldap::NG, open-source Web-SSO of the french administrations (20)

[LDAPCon 2015] The OpenID Connect Protocol
[LDAPCon 2015] The OpenID Connect Protocol[LDAPCon 2015] The OpenID Connect Protocol
[LDAPCon 2015] The OpenID Connect Protocol
 
network-management Web base.ppt
network-management Web base.pptnetwork-management Web base.ppt
network-management Web base.ppt
 
Comodo my dlp_techpresentation_060615_v3
Comodo my dlp_techpresentation_060615_v3Comodo my dlp_techpresentation_060615_v3
Comodo my dlp_techpresentation_060615_v3
 
Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...
Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...
Don’t Get Stuck in The Encryption Stone Age: Get Decrypted Visibility with Am...
 
The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...
The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...
The Bot Stops Here: Removing the BotNet Threat - Public and Higher Ed Securit...
 
Free NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings rightFree NetFlow Analyzer training - Getting the initial settings right
Free NetFlow Analyzer training - Getting the initial settings right
 
SFScon 2020 - Alex Lanz Martin Malfertheiner - OAuth2 OpenID
 SFScon 2020 - Alex Lanz Martin Malfertheiner - OAuth2 OpenID SFScon 2020 - Alex Lanz Martin Malfertheiner - OAuth2 OpenID
SFScon 2020 - Alex Lanz Martin Malfertheiner - OAuth2 OpenID
 
NetFlow Analyzer Training Part I: Getting the initial settings right
NetFlow Analyzer Training Part I: Getting the initial settings rightNetFlow Analyzer Training Part I: Getting the initial settings right
NetFlow Analyzer Training Part I: Getting the initial settings right
 
From Data Push to WebSockets
From Data Push to WebSocketsFrom Data Push to WebSockets
From Data Push to WebSockets
 
OSMC 2009 | net-snmp: The forgotten classic by Dr. Michael Schwartzkopff
OSMC 2009 | net-snmp: The forgotten classic by Dr. Michael SchwartzkopffOSMC 2009 | net-snmp: The forgotten classic by Dr. Michael Schwartzkopff
OSMC 2009 | net-snmp: The forgotten classic by Dr. Michael Schwartzkopff
 
Export flows, group traffic, map application traffic and more: NetFlow Analyz...
Export flows, group traffic, map application traffic and more: NetFlow Analyz...Export flows, group traffic, map application traffic and more: NetFlow Analyz...
Export flows, group traffic, map application traffic and more: NetFlow Analyz...
 
OpManager-Overview-30-9-14.pdf
OpManager-Overview-30-9-14.pdfOpManager-Overview-30-9-14.pdf
OpManager-Overview-30-9-14.pdf
 
amrapali builders@@@hacking d link routers with hnap.pdf
amrapali builders@@@hacking d link routers with hnap.pdfamrapali builders@@@hacking d link routers with hnap.pdf
amrapali builders@@@hacking d link routers with hnap.pdf
 
The missing signalling layer for WebRTC
The missing signalling layer for WebRTCThe missing signalling layer for WebRTC
The missing signalling layer for WebRTC
 
RedIRIS Identity Service latest news and developments - Jamie Perez
  RedIRIS Identity Service latest news and developments - Jamie Perez  RedIRIS Identity Service latest news and developments - Jamie Perez
RedIRIS Identity Service latest news and developments - Jamie Perez
 
HAProxy as Egress Controller
HAProxy as Egress ControllerHAProxy as Egress Controller
HAProxy as Egress Controller
 
Martin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -finalMartin Zeiser, Universal Pwn n Play - pacsec -final
Martin Zeiser, Universal Pwn n Play - pacsec -final
 
Ce hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologiesCe hv6 module 54 proxy server technologies
Ce hv6 module 54 proxy server technologies
 
Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...
Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...
Open Management Using OSGi Technology Enabled Services - Stéphane Frénot, Ass...
 
[OSSParis 2015] The OpenID Connect Protocol
[OSSParis 2015] The OpenID Connect Protocol[OSSParis 2015] The OpenID Connect Protocol
[OSSParis 2015] The OpenID Connect Protocol
 

Recently uploaded

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 

Recently uploaded (20)

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 

Lemonldap::NG, open-source Web-SSO of the french administrations

  • 1. Open-Source Web-SSO of the french administrations
  • 2. What is « Gendarmerie Nationale » 4300 agencies ● (300 overseas) 105000 users ● 1 private network ● connecting all agencies 2 datacenters ●
  • 3. What is Lemonldap::NG A powerful distributed Web-SSO system : ● an assembly of well tested open-source libraries ● based on ModPerl API to run inside Apache ● It centrally manages authentication, user's ● attributes propagation and access control It includes a sophisticated access rights ● management
  • 4. History of the project 2002 : First Web-SSO launched on the Gendarmerie's network ● 2003 : Lemonldap developed by the Ministry of finance ● 2004 : Studies to replace existing Gendarmerie's Web-SSO ● 2005 : Lemonldap::NG developped and deployed by ● Gendarmerie 2006 : Lemonldap::NG is chosen by Feder-Id project to ● become a Liberty-Alliance Service Provider 2009 : Gendarmerie is funding the SAML-2 extension ●
  • 5. Lemonldap::NG on the Gendarmerie's network 105.000 users ● average of 40,000 sessions at the same time ● about 100 protected applications (98% of the whole) ● among which : all specific applications (J2EE and PHP) ● SAP ● Fudforum ● Mediawiki ● Sympa management interface ● Nagios (all applications based on Apache htaccess) ● ... ●
  • 7. Double cookie Separated protection for HTTP and HTTPS ● connections, so that less secured applications don't weaken the other ones POST / HTTP/1.1 Host: authentification.gendarmerie.fr HTTP/1.x 200 OK Date: Tue, 24 Mar 2009 14:18:08 GMT Server: Apache Set­Proxy­Cookie: lmproxy=4c640e7ff9450bd3cc65c069f3fa920e;                    domain=gendarmerie.fr; path=/ Set­Cookie: lemonldap=d8a6a10a88bcfcdddd4906ad55119ad2;                    domain=gendarmerie.fr; path=/; secure Set­Cookie: lemonldaphttp=ae92a75d4c15dd3d5eae40ce386594e7;                    domain=gendarmerie.fr; path=/ ...
  • 8. Internet authentication « Proxy-Cookie » enables the Single-Sign-On ● to control the access to Internet POST / HTTP/1.1 Host: authentification.gendarmerie.fr HTTP/1.x 200 OK Date: Tue, 24 Mar 2009 14:18:08 GMT Server: Apache Set­Proxy­Cookie: lmproxy=4c640e7ff9450bd3cc65c069f3fa920e;                    domain=gendarmerie.fr; path=/ Set­Cookie: lemonldap=d8a6a10a88bcfcdddd4906ad55119ad2;                    domain=gendarmerie.fr; path=/; secure Set­Cookie: lemonldaphttp=ae92a75d4c15dd3d5eae40ce386594e7;                    domain=gendarmerie.fr; path=/ ...
  • 10. Performances Overhead of 3ms per hit ● Average of 40.000 sessions at the same time ● servers can check more than 3000 queries by ● minutes without any slowdown
  • 12. Development environment Principles : ● developers must have a valid account (the « real ● user's account ») they can choose any other account (the « spoofed ● user's account ») to test access control accounting and access rules involve both spoofed ● user's and real user's attributes
  • 14. Session Explorer Accounting is done with both identities (spoofed user's / real user's)
  • 15. Sharing authentication with remote applications Extending the core environment with additional ● features to enable sharing of authentication with remote applications : only a short list of attributes is exported to remote ● applications
  • 17. Client-Server over HTTP Lemonldap::NG provides 2 ways to control ● access from non-browser clients : SOAP authentication : the client gets a cookie with ● a SOAP request, then uses the cookie as a normal browser HTTP Auth-Basic authentication : the application is ● protected by an agent (handler) which requests the portal by SOAP using user/password transmitted by the client (by Auth-Basic mechanism) : authorization still uses Lemonldap::NG rules –
  • 18. Conclusion Cost of the project (for the Gendarmerie) : ● 4 servers ● 4 months of work for 1 developper ● Result : ● a flexible and suitable solution ●