Fédération d'identités - Yann Desmarest - eValais.ch
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
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
10Standards
• Security Assertion Markup Language 2.0 – SAML 2.0
• OAuth 2.0
• OpenID Connect 1.0
11Mythes
• MYTHE #1 : J’ai implémenté une authentification SAML
• MYTHE #2 : J’authentifie mes utilisateurs avec OAuth
12SAML 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
13SAML 2.0 / Roles
Service Identity
Provider Client Provider
14SAML 2.0 / Implémentations
Enhanced
IDP SP Client or
Initiated Initiated Proxy
15SAML 2.0
Microsoft a choisi d’implémenter...
16SAML 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
19OAuth 2.0 / Roles
Resource Resource Authorization
Owner Client Server Server
20OAuth 2.0 / Grant types
Resource
Authorization Owner Client
Code Implicit Password Credentials
Credentials
21OAuth 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
22OAuth 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
23OpenID Connect 1.0
Introduit un nouveau token
ID Token
Force l’utilisation de JWT
ID Token est pour l’identité uniquement
24JSON 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… 25JWT
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
26Use case #1 : Sécuriser l’identification dans Office365
27Use case #1 : Sécuriser l’identification dans Office365
Politique d’accès granulaire
Authentification Multi-Facteur
Inspection du endpoint
Authentification par certificat
28Use case #2 : SSO avec Salesforce
F5 APM est l’Identity Provider
Salesforce est le Service Provider
Ajout d’un mécanisme d’authentification forte
29Use case #2 : SSO avec App Cloud
Salesforce
Tableau Software
Success Factor
Concur
Ping Identity
Office 365
SimplePHP
Shibboleth, ...
30Use case #3 : Intégration avec Azure AD
31Use 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
32Use case #4 : Protection des APIs
Création d’un service d’enregistrement des applications mobiles
Utilisation de F5 APM
Authorization Server
Resource Server
33Use 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
34Questions?
35Vous pouvez aussi lire