Fédération d'identités - Yann Desmarest - eValais.ch

La page est créée Vincent Perrier
 
CONTINUER À LIRE
Fédération d'identités - Yann Desmarest - eValais.ch
Fédération d’identités
Yann Desmarest
Fédération d'identités - Yann Desmarest - eValais.ch
What is ID Federation ? / Introduction

•

                                         2
Fédération d'identités - Yann Desmarest - eValais.ch
Et pendant ce temps la...
Fédération d'identités - Yann Desmarest - eValais.ch
Et maintenant ?
Fédération d'identités - Yann Desmarest - eValais.ch
Sans oublier...
Fédération d'identités - Yann Desmarest - eValais.ch
Fédérer les identités

    basic      HTTP form   NTLM v2   Kerberos

                                                6
Fédération d'identités - Yann Desmarest - eValais.ch
Fédérer les identités

FEDERATION

     basic      HTTP form   NTLM v2   Kerberos

                                                 7
Fédération d'identités - Yann Desmarest - eValais.ch
Cloud App

 Fédérer les identités

FEDERATION

     basic      HTTP form   NTLM v2   Kerberos

                                                  8
Fédération d'identités - Yann Desmarest - eValais.ch
Cloud App

 Fédérer les identités

FEDERATION

     basic      HTTP form   NTLM v2   Kerberos

                                                  9
Fédération d'identités - Yann Desmarest - eValais.ch
Scénarios typiques

• Mettre en place du SSO entre les applications métiers

• Intégrer les applicatoins Cloud avec les solutions d’authentification interne

• Déléguer la gestion des authentifications à des tiers

                                                                                  10
Standards

• Security Assertion Markup Language 2.0 – SAML 2.0

• OAuth 2.0

• OpenID Connect 1.0

                                                      11
Mythes

• MYTHE #1 : J’ai implémenté une authentification SAML

• MYTHE #2 : J’authentifie mes utilisateurs avec OAuth

                                                         12
SAML 2.0

    Fait parti du processus d’authentification

    Protocole destiné au SSO pour les Navigateurs Web

    Basé sur XML et SOAP

    Beaucoup - trop - de possibilités d’intégrations

    C’est un standard qui n’est pas implémenté de facon standard par les éditeurs

                                                                                    13
SAML 2.0 / Roles

  Service              Identity
  Provider    Client   Provider

                                  14
SAML 2.0 / Implémentations

                             Enhanced
     IDP          SP          Client or
  Initiated   Initiated        Proxy

                                          15
SAML 2.0

    Microsoft a choisi d’implémenter...

                                          16
SAML 2.0
Mais aussi SAML 1.1 aka WS-Fed
  CRM Dynamics, Sharepoint, Skype For Business
OAuth 2.0

    Une application demande un accès à des informations fournie par des APIs à la
    place de l’utilisateur

    L’utilisateur doit donner son consentement

    Client, Ressource, IDP

    Specifications vagues sur certains points (Token)

    C’est un framework d’autorisation décrit par la norme RFC 6749

                                                                                19
OAuth 2.0 / Roles

  Resource              Resource   Authorization
   Owner       Client    Server      Server

                                              20
OAuth 2.0 / Grant types

                              Resource
  Authorization                Owner         Client
      Code        Implicit    Password     Credentials
                             Credentials

                                                     21
OAuth 2.0 / Authorization Code

                    User
                 (Resource
                  Owner)                 1: User Authorization Request

                                         2: User Authorizes Application

                    3: Authorization Code Grant

                    4: Access Token Request
Application
                    5: Access Token Grant                                 Auth.
 (Client)
                                                                          Server
                                                                              22
OAuth 2.0 / Authorization Code

 1. https://api.e-xpertsolutions.com/oauth/v2/authorize
    ?response_type=code
    &client_id=1234
    &redirect_uri=https://myapp.com/callback
    &scope=user:name user:email user:avatar
 2. User clicks on «Accept»
 3. https://myapp.com/callback
    ?code=42xDFg2JAS24vaj2aAnIPJ3iso4
 4. https://api.e-xpertsolutions.com/oauth/v2/token
    ?client_id=1234
    &client_secret=abcd
    &grant_type=authorization_code
    &code=42xDFg2JAS24vaj2aAnIPJ3iso4
    &redirect_uri=https://myapp.com/callback
 5. Auth. Server POST the token to the redirect URI

                                                          23
OpenID Connect 1.0

 
     Introduit un nouveau token
        ID Token
 
     Force l’utilisation de JWT
 
     ID Token est pour l’identité uniquement

                                               24
JSON Web Token / JWT

      Header               Payload                Signature
                       {                      HMAC(
                        "iss": “e-             Base64(Header)
{                      xpertsolutions.com",
    "typ": "JWT" ,      "exp": 2807819340,
                        "name": "Kevin
                                                  .
    "alg": "HS256"
                       Gillieron",                Base64(Payload),
}
                        "admin": true             Secret Key
                       }                      )

eyJ0eXAiOiJKV1QiLCJh   eyJpc3MiOiDigJxlLXh    CbJx42Jpc3MDigJxlLP
bGciOiJIUzI1NiJ9       wZXJ0c29sdXRb…         hwqJ0Q23s6FRb… 25
JWT

      Security relies on        Digital            Encryption
      digital signature       signature           Possible (JWE)

       Asymetric           Authentication      Confidentiality
                            Non-                Bigger token
        Key (RSA)
                             repudiation         More Complex
                            Integrity           AES256 GCM
                                                 RSA-OAEP

                                                                    26
Use case #1 : Sécuriser l’identification dans Office365

                                                          27
Use case #1 : Sécuriser l’identification dans Office365

    Politique d’accès granulaire


    Authentification Multi-Facteur


    Inspection du endpoint


    Authentification par certificat

                                                          28
Use case #2 : SSO avec Salesforce


    F5 APM est l’Identity Provider


    Salesforce est le Service Provider


    Ajout d’un mécanisme d’authentification forte

                                                    29
Use case #2 : SSO avec App Cloud

    Salesforce

    Tableau Software

    Success Factor

    Concur

    Ping Identity

    Office 365

    SimplePHP

    Shibboleth, ...
                                   30
Use case #3 : Intégration avec Azure AD

                                          31
Use case #4 : Protection des APIs

    Publier des APIs SOAP & REST pour que les clients accèdent à leurs données
    à travers une application mobile


    Utilisation de OAuth 2.0 pour autoriser l’application mobile à accéder aux APIs


    Design, rédaction des spécifications, implémentation des spécifications

                                                                                      32
Use case #4 : Protection des APIs

    Création d’un service d’enregistrement des applications mobiles


    Utilisation de F5 APM
        Authorization Server
        Resource Server

                                                                      33
Use case #5 : Social Login

    Ajout d’un mécanisme d’authentification des utilisateurs via leur compte social
    (Facebook, Google, Microsoft, Twitter, …)


    Utilisation de F5 APM


    Application B2C


    Attention au Mot de passe
                                                                                      34
Questions?

             35
Vous pouvez aussi lire