présentation de l'offre iam de linagora linid
TRANSCRIPT
IAM Open SourceIAM Open SourceGestion 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 / 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
3 / 82
Présentation de LINAGORA
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
5
L'alternative aux logiciels propriétaires
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
7
LINAGORA, 1er investissement R&D privé Open Source
R&D au coeur des SI de l’État et soutenu par l'investissement public
55
3,5 M€
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
Vos interlocuteurs privilégiés
Directeur de projet
Michel-Marie MAUDETDirecteur Général Adjoint20 ans d'expé[email protected]+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 OUAZANAOSS Expert11 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 COUTADEUROSS Expert5 ans d'expérience
Spécialités : * Annuaire OpenLDAP * Haute disponibilité * Clustering, Monitoring
Expert Open SourceAlexandre CHAPELLONOSS Expert10 ans d'expérience
10
Société Générale (2010)
SunDS to OpenLDAP migrationEntries: +300kHA, Active DirectoryProject: 120 days
Ministère des Finances (2003-2005)
SunDS to OpenLDAP migrationEntries : +50kHA, Password policyProject: 600 days
iCDC (2007)
OpenLDAP Proof Of ConceptEntries: +100 millionsHA, cluster, stress testsProject: 40 days
Carrefour (2006)
LDAP Directory clusterEntries: +1 millionHA, ClusterProject: 160 days
Canton de Vaud – Suisse (2011)
SunDS to OpenLDAP migrationEntries: +100 kHA, Active DirectoryProject: 100 days
AFP (2011-2013)
SunDS to OpenLDAP migrationEntries: +200kHA, monitoringProject: 60 days
Ministère de l'Agriculture (2012)
SunDS to OpenLDAP migrationEntries: +350kHA, MultimasterProject : 200 days
Orange (2013)
SunDS to OpenLDAP migrationEntries: +100kHA, ProxyProject: 50 days
Références principales sur le périmètre IAM
11
Références principales sur le périmètre SSO et fédérations d'identités
12 / 82
IAM : concepts et briques fonctionnelles de base
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
14
Single Password
User
Web Application
2'
Desktop Application
Directory
2
1'
1
User enters same login and
password on all applications
Credentials are checked on a single backend
15
1. User access to the application for the first time2. User is redirected to authentication portal User receives a token3. 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
16
Access Control
User
Web Application
1
SSO
2
Authorization
3
1. User access to the application with SSO token2. SSO software checks authorization3. User access to the application
17
Self Service Password
User
Support
What's mypassword?
Directory
Self Service Interface
Passwordchange
18
Cercle de confiance : principe de la fédération
Service Provider
Identity Provider Service Provider
Attributes Provider
User interaction
Web service
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
Fédération d'un compte
Fournisseur d'identité Fournisseur de service
michel.maudet
abcd1234
abcd1234
FB_mmaudet=abcd1234 ?
michel.maudet FB_mmaudet
21 / 82
IAM et Open Source
22
Offre LinID : composants complémentaires et intégrés
Référentiel des Référentiel des identitésidentités
DirectoryDirectoryServerServer
Sources Sources d'identitésd'identités(SIRH, ...)(SIRH, ...)
Identités du Identités du système système
d'informationd'information
Provisioning Provisioning ManagerManager
Applications du Applications du système système
d'informationd'information
Applications CloudApplications CloudApplications CloudApplications Cloud
Console Console d'administrationd'administration
OpenLDAPOpenLDAPManagerManager
Interface de gestionInterface de gestion
DirectoryDirectoryManagerManager
SSO, contrôle d'accès, fédération SSO, contrôle d'accès, fédération d'identitésd'identités
FederationFederation& Access& AccessManagerManager
23
LinID in your IT
Cloudapplications
Enterprisedata
Directory Server
Provisioning ManagerDirectory Manager
Enterpriseapplications
Access & Federation Manager
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 / 82
Offre ForgeRock : « Open Source » mais pas Communautaire !!!
Directory Server
Access & FederationManager
Provisionning Manager
Directory Manager
26
Directory Server
27
Directory Server
Based on
Web administration interface
High performances
From 1 to 1 billions entries
Packages for the enterprise
Monitoring and backup
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
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
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
31
OpenLDAP Manager
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
33
Gestion des connexions
34
Édition du schéma
35
Directory Manager
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
37
LinID Directory Manager
User management Entry creation
Advanced search Workflows
38
Formulaire de recherche
39
Consultation d'une fiche
40
Gestion de la photo
41
Arbre de navigation
42
Personnalisation graphique
Intégration Workflow Activiti 1/5
Par exemple, création d'un processus de validation de création d'utilisateur.
Intégration Worflow Activiti 2/5
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.
Intégration Workflow Activiti 4/5
Affichage de l'avancement du processus et du formulaire à compléter par le responsable.
Démonstration Activiti 5/5
48
Access & Federation Manager
49
Access & Federation Manager
Based on
Application menu
Web administration interface
Graphical customization
50
LinID Access Manager
● Produit de WebSSO et contrôle d'accès (LemonLDAP::NG)
● Modules d'authentification LDAP, SQL, CAS, Kerberos, OpenID, SAML, SSL, OTP (Yubikey), etc.
● Intégration directe SiteMinder, Apache htaccess, HTTP Basic, Tomcat
● Rejeu de formulaires
● Historique de connexion
51
Portail d'authentification
52
Liste des applications
53
Personnalisation graphique
54
Console d'administration
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/...)
56
Provisionning Manager
57
LinID Provisioning Manager
Based on
Javascript debugger
JS and Groovy scripting
Password synchronization
Multi protocols
58
Un « ETL » dédié aux annuaires
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
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 / 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 / 82
Démarche projet à adopter pour intégrer une solution IAM à votre SI
63 / 82
Architecture type
64 / 82
Architecture type
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
Exemple : Organisation de la migration des données
● Migration de l'architecture actuelle● Depuis le schéma d'architecture actuel
67
Exemple : Organisation de la migration
● Migration de l'architecture● Introduction du proxy et d'OpenLDAP synchronisé à partir de SunDS
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
Exemple : Organisation de la migration
● Migration de l'architecture● Arrêt des SunDS après migration complète de tous les flux vers OpenLDAP
70
Synchronization withActive Directory
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
1. User authenticates on LinID DS2. LinID DS delegate authentication to saslauthd3. SASL daemon search user in AD and replay authentication4. Authentication result is returned to SASL dameon5. Authentication result is returned to LinID DS6. Authentication result is returned to user
Authentication delegation to AD
LDAP Bind
Directory Server
SASL daemon
SASL
Active Directory
LDAP Search
LDAP Bind
73
1. User changes password on AD2. Password Filter DLL intercept the request3. Password modification is done on LinID DS4. Initial password change request is given back to AD
AD password modification interception
Passwordchange
Directory Server
DLLDLL
Active Directory
LDAP Modify
74
1. User changes password on LinID DS2. LinID DS stores password with symmetric encryption 3. LinID DS stores password with asymmetric encryption4. LinID PM uses symmetric encryption to change password in AD
LinID DS password propagation to AD
LDAP Modify
Directory ServerActive Directory
Provisioning Manager
75
Self Service Password
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.
77
Standard password change page
78
Answer to a question
79
Use a mail
Merci de votre attentionMerci de votre attention
www.linagora.com @linagora
81 / 82
Exploitation des logs
● La solution intègre-t-elle un module permettant la consultation des logs et la personnalisation des rapports ?
82 / 82
Exploitation des logs via la pile ELK