1. IAM Open SourceIAM Open Source
Gestion de l'identité et des accèsGestion de l'identité et des accès
MPC LINAGORA
8 octobre 2015
@Linagora #mpclinid2015 @mmaudet
Michel-Marie MAUDET
2. 2 / 82
Agenda
● Mot d'introduction et présentation LINAGORA
● IAM : concepts et briques fonctionnelles de base
● Définitions générales
● Concepts IDM (Gestion des Identités)
● Concepts AM (Gestion des Accès et accès aux ressources)
● IAM : fonctionnalités avancées
● IAM et Open Source
● Panorama du marché de l'IAM / Constat
● Présentation de l'offre LinID
● SAML V2 et OpenID Connect
● Démarche projet à adopter pour intégrer une solution IAM à votre SI
● Types de projets et démarche
● Cas clients
4. 4
Présentation de LINAGORA
Logiciels et services pour
réussir
vos grands projets de
transformation
open source
Principaux clientsPrincipaux clients
Edition LogicielleEdition Logicielle
ServicesServices
Assurance LogicielleAssurance Logicielle
Messagerie
Collaborative
Partage de fichiers
sécurisé
Gestion et Fédération des
Identités
Plateforme
d'intégration SOA
Bureaux en France, Belgique,
États Unis,Canada et Vietnam.
Partenaires et clients en
Tunisie, Colombie et au Nigéria
6. 6
Modèle économique
100 % Free Free
= aucun coût de licence
= réellement Open Source
= pas de modèle Freemium
Nos modes de rémunération :
Conseil, intégration, développement
Support technique
Souscription de services Cloud
8. 8 / 82
Assurance Logicielle
L'assurance
par le support et la maintenance
de 400 logiciels libres
Un métier d'éditeur
Un Engagement de résultats
9. 9
Vos interlocuteurs privilégiés
Directeur de projet
Michel-Marie MAUDET
Directeur Général Adjoint
20 ans d'expérience
michel.maudet@linagora.com
+33660469852
Spécialités :
* Open Source Market / Business Models
* Open Source Project Management
* Technical background : infrastructure, Databases,
security, Collaboration, Web 2.0, SaaS/PaaS, Service
Management, Desktop
Spécialités :
* Annuaire OpenLDAP
* Expertise LDAP Avancée
* Synchronisation LDAP
Expert
OpenLDAP
Raphaël OUAZANA
OSS Expert
11 ans d'expérience
Spécialités :
* Archi. annuaire OpenLDAP, Haute dispo
* Dév WebSSO LemonLDAP::NG
* Fédération d'identité, gestion d'accès
Expert IAM
David COUTADEUR
OSS Expert
5 ans d'expérience
Spécialités :
* Annuaire OpenLDAP
* Haute disponibilité
* Clustering, Monitoring
Expert Open Source
Alexandre CHAPELLON
OSS Expert
10 ans d'expérience
10. 10
Société Générale (2010)
SunDS to OpenLDAP
migration
Entries: +300k
HA, Active Directory
Project: 120 days
Ministère des Finances (2003-2005)
SunDS to OpenLDAP
migration
Entries : +50k
HA, Password policy
Project: 600 days
iCDC (2007)
OpenLDAP Proof Of
Concept
Entries: +100 millions
HA, cluster, stress tests
Project: 40 days
Carrefour (2006)
LDAP Directory cluster
Entries: +1 million
HA, Cluster
Project: 160 days
Canton de Vaud – Suisse (2011)
SunDS to OpenLDAP
migration
Entries: +100 k
HA, Active Directory
Project: 100 days
AFP (2011-2013)
SunDS to OpenLDAP
migration
Entries: +200k
HA, monitoring
Project: 60 days
Ministère de l'Agriculture (2012)
SunDS to OpenLDAP
migration
Entries: +350k
HA, Multimaster
Project : 200 days
Orange (2013)
SunDS to OpenLDAP
migration
Entries: +100k
HA, Proxy
Project: 50 days
Références principales sur le périmètre IAM
12. 12 / 82
IAM : concepts et briques
fonctionnelles de base
13. 13
The person gets a
promotion and
needs new access
rights
The person leaves
the organization,
his account is
deleted
The person edits
his information
and his password
A new person is
hired and needs
an account
Identity Life Cycle
1
2
1
3
4
15. 15
1. User access to the application for the first time
2. User is redirected to authentication portal
User receives a token
3. User access to the application with the token
Token is verified and access is granted
Single Sign On
User
Web Application
Authentication
1
2
3
18. 18
Cercle de confiance : principe de la fédération
Service Provider
Identity Provider Service Provider
Attributes Provider
User interaction
Web service
19. 19
Cinématique SAML 2.0
1. Premier accès à l'application
IDP SAML
SP SAML
2. Authentification sur le
serveur SAML choisi par
l'utilisateur et autorisé dans le
cercle de confiance
3. Réponse SAML
IDP SAML IDP SAML
20. 20
Fédération d'un compte
Fournisseur d'identité Fournisseur de service
michel.maudet
abcd1234
abcd1234
FB_mmaudet=abcd1234 ?
michel.maudet FB_mmaudet
23. 23
LinID in your IT
Cloud
applications
Enterprise
data
Directory Server
Provisioning Manager
Directory Manager
Enterprise
applications
Access & Federation Manager
24. 24
A full Identity Management stack
Directory Server Directory Manager
Provisioning Manager Access and Federation Manager
LDAPv3 compliant
Multimaster replication
Password Policy
Web Administration
White/Yellow pages
Organizational charts
Workflows
Delegation
Batch/Real time sync
Active Directory
LDAP/SQL/REST
Plugins
Single Sign On
Access Control
Identity Federation
Self Service Password
25. 25 / 82
Offre ForgeRock : « Open Source » mais pas
Communautaire !!!
Directory Server
Access & Federation
Manager
Provisionning Manager
Directory Manager
27. 27
Directory Server
Based on
Web administration interface
High performances
From 1 to 1 billions entries
Packages for the enterprise
Monitoring and backup
28. 28
LinID Directory Server
● Annuaire de référence : OpenLDAP
● Paquetages RPMs et Debian des dernières versions
● Utilitaire de sauvegarde/restauration des données et de la
configuration
● Console d'administration : LinID OpenLDAP Manager
● Greffons de supervision Nagios/Centreon/Cacti
29. 29
L'annuaire le plus performant du marché
● Tests de charge en lecture réalisés en 2013 :
Source : http://fr.slideshare.net/ldapcon/benchmarks-on-ldap-directories
30. 30
Respect des standards et richesse fonctionnelle
● OpenLDAP est l'implémentation de référence des RFC
IETF sur le protocole LDAP
● Un système de greffons permet l'activation de nombreuses
fonctionnalités :
● Intégrité référentielle
● Unicité globale
● Groupes dynamiques
● Politique des mots de passe
● Pagination et VLV
● Attributs collectifs
● Service dynamiques
● Gestion de l'attribut memberOf
32. 32
LinID OpenLDAP Manager
● Console Web de gestion de la
configuration OpenLDAP
(depuis la version 2.3)
● Gestion des backends et des
overlays
● Gestion du schéma
● Détection dynamique des
modules compilés et de la
version
● Possibilité d'administrer
plusieurs serveurs depuis
une interface unique
36. 36
LinID Directory Manager
● Framework J2EE haut niveau pour
création d'interfaces de gestion
d'annuaires LDAP
● Fonctionnalités :
● Pages blanches, pages jaunes
● Formulaire de création, mise à jour
et suppression
● Délégation
● Recherches multicritères
● Navigation par arbre
● Gestion des photos
● Organigrammes
● Adaptabilité dynamique au schéma
de données et aux contrôles d'accès
45. Intégration Workflow Activiti 3/5
Affichage des taches à réaliser pour l'utilisateur connecté. Par exemple,
un responsable devant valider la création d'un utilisateur.
46. Intégration Workflow Activiti 4/5
Affichage de l'avancement du processus et du formulaire à compléter
par le responsable.
55. 55
LinID Federation Manager
● Extension de LinID Access Manager pour la fédération d'identité
● Support :
● Authentification et fournisseur d'identité SAML2 / Shibboleth
● Authentification et fournisseur d'identité OpenID / oAuth2
● Authentification et fournisseur d'identité CAS
● Cas d'usage
● Partage d'applications pour plusieurs organisations
● Accès à des applications dans une organisation multi AD hors forêt
● Sécurisation de l'accès à des applications SaaS (Google Apps) via une
authentification locale (AD, certificats, token, ...)
● Passerelle mutli-protocoles (CAS/SAML/LDAP/OpenID/...)
59. 59
LinID Provisioning Manager - PM
● Moteur d'approvisionnement et de synchronisation
● Fonctionnement : unitaire ou événementiel
● Référentiels supportés :
● SGBD : Oracle, MySQL, PostgreSQL, Ingres, Sybase…
● Annuaires LDAP : Sun/Oracle DS, OpenLDAP, Active Directory, ...
● Fichiers : CSV, XML, LDIF, ...
● Autres : Google Apps, OBM, NIS, Executable
● Libraires avancées :
● Active Directory
● Samba
● Extensibilité simple via Java
● Supervision temps réel Nagios/Centreon via JMX
60. 60
Exemples d'implémentation
● Synchronisation d'un annuaire d'entreprise vers des
annuaires techniques Samba
● Synchronisation bidirectionnelle entre Active Directory et
OpenLDAP, avec gestion des mots de passe
● Import des comptes dans un annuaire depuis une base de
données RH
● Approvisionnement d'identités dans des bases de données
d'applications
61. 61 / 82
Roadmap de l'offre LinID
Directory Server Directory Manager
Provisioning Manager Access and Federation Manager
OpenLDAP 2.5 (2016)
●
More extensive dynamic
configuration
(cn=config enhancement)
●
LDAPv3 extensions :
●
LDAP Transaction support
(Draft)
●
Dynamic syntax engine (Forth-
based)
Workflows support
(Q1 2016)
Access & Rights Gouvernance
(Q3 2016)
Audit / Enhanced Reporting
(Q1 2016)
New connectors availability
(ex : SQL Server support)
(Q1 2016)
Password sync enhancement
(Q1 2016)
OAuth 2.0 / OpenID
Connect authentication &
provider module
(Q4 2015)
CAS V3 protocol Support
New UI based on
AngularJS
62. 62 / 82
Démarche projet à adopter pour
intégrer une solution IAM à votre SI
65. 65
Une migration industrielle et maîtrisée
● Outil d'aide à la conversion des
schémas et des données
● LINAGORA apporte les
adaptations nécessaires à
OpenLDAP pour couvrir les
comportements non standards
des annuaires propriétaires
Exemple de points de vigilance à traiter pendant la phase de migration :
● Définitions redondantes d'attribut
● Attributs opérationnels non reconnus
● Valeurs d'attribut vides
● Non respect de la syntaxe d'attribut
● Valeurs binaires non reconnue
● Conflits de classes d'objet structurelles
● Structuration autour de classes d'objet auxiliaires
LINAGORA a déjà traité plusieurs migrations Oracle vers
OpenLDAP avec prise en charge des spécificités de l'annuaire
pour garantir la compatibilité avec les applications existantes.
66. 66
Exemple : Organisation de la migration des données
● Migration de l'architecture actuelle
● Depuis le schéma d'architecture actuel
67. 67
Exemple : Organisation de la migration
● Migration de l'architecture
● Introduction du proxy et d'OpenLDAP synchronisé à partir de SunDS
68. 68
Exemple : Organisation de la migration
● Migration de l'architecture
● Redirection des flux d'écriture vers OpenLDAP et maintien en synchronisation
des Sun DS
69. 69
Exemple : Organisation de la migration
● Migration de l'architecture
● Arrêt des SunDS après migration complète de tous les flux vers OpenLDAP
71. 71
Synchronization with Active Directory
Directory Server
Provisioning Manager
Active Directory
Users and groups synchronization
Authentication delegation to AD
AD password modification interception
LinID DS password propagation to AD
72. 72
1. User authenticates on LinID DS
2. LinID DS delegate authentication to saslauthd
3. SASL daemon search user in AD and replay authentication
4. Authentication result is returned to SASL dameon
5. Authentication result is returned to LinID DS
6. Authentication result is returned to user
Authentication delegation to AD
LDAP Bind
Directory Server
SASL daemon
SASL
Active Directory
LDAP Search
LDAP Bind
73. 73
1. User changes password on AD
2. Password Filter DLL intercept the request
3. Password modification is done on LinID DS
4. Initial password change request is given back to AD
AD password modification interception
Password
change
Directory Server
DLLDLL
Active Directory
LDAP Modify
74. 74
1. User changes password on LinID DS
2. LinID DS stores password with symmetric encryption
3. LinID DS stores password with asymmetric encryption
4. LinID PM uses symmetric encryption to change password in AD
LinID DS password propagation to AD
LDAP Modify
Directory Server
Active Directory
Provisioning Manager
76. 76
Different ways to reset the password
QuestionQuestion
SMSSMS MailMail
User registers answers to
predefined questions and
can then give the answer
to reset the password
User gives his phone
number to get a code by
SMS. This code allows to
reset the password.
A link is sent by
mail. This link
allows to reset the
password.