82
IAM Open Source IAM Open Source Gestion de l'identité et des accès Gestion de l'identité et des accès MPC LINAGORA 8 octobre 2015 @Linagora #mpclinid2015 @mmaudet Michel-Marie MAUDET

Présentation de l'offre IAM de LINAGORA LinID

Embed Size (px)

Citation preview

Page 1: Présentation de l'offre IAM de LINAGORA LinID

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

Page 2: Présentation de l'offre IAM de LINAGORA LinID

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

Page 3: Présentation de l'offre IAM de LINAGORA LinID

3 / 82

Présentation de LINAGORA

Page 4: Présentation de l'offre IAM de LINAGORA LinID

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

Page 5: Présentation de l'offre IAM de LINAGORA LinID

5

L'alternative aux logiciels propriétaires

Page 6: Présentation de l'offre IAM de LINAGORA LinID

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

Page 7: Présentation de l'offre IAM de LINAGORA LinID

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€

Page 8: Présentation de l'offre IAM de LINAGORA LinID

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

Page 9: Présentation de l'offre IAM de LINAGORA LinID

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

Page 10: Présentation de l'offre IAM de LINAGORA LinID

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

Page 11: Présentation de l'offre IAM de LINAGORA LinID

11

Références principales sur le périmètre SSO et fédérations d'identités

Page 12: Présentation de l'offre IAM de LINAGORA LinID

12 / 82

IAM : concepts et briques fonctionnelles de base

Page 13: Présentation de l'offre IAM de LINAGORA LinID

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

Page 14: Présentation de l'offre IAM de LINAGORA LinID

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

Page 15: Présentation de l'offre IAM de LINAGORA LinID

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

Page 16: Présentation de l'offre IAM de LINAGORA LinID

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

Page 17: Présentation de l'offre IAM de LINAGORA LinID

17

Self Service Password

User

Support

What's mypassword?

Directory

Self Service Interface

Passwordchange

Page 18: Présentation de l'offre IAM de LINAGORA LinID

18

Cercle de confiance : principe de la fédération

Service Provider

Identity Provider Service Provider

Attributes Provider

User interaction

Web service

Page 19: Présentation de l'offre IAM de LINAGORA LinID

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

Page 20: Présentation de l'offre IAM de LINAGORA LinID

20

Fédération d'un compte

Fournisseur d'identité Fournisseur de service

michel.maudet

abcd1234

abcd1234

FB_mmaudet=abcd1234 ?

michel.maudet FB_mmaudet

Page 21: Présentation de l'offre IAM de LINAGORA LinID

21 / 82

IAM et Open Source

Page 22: Présentation de l'offre IAM de LINAGORA LinID

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

Page 23: Présentation de l'offre IAM de LINAGORA LinID

23

LinID in your IT

Cloudapplications

Enterprisedata

Directory Server

Provisioning ManagerDirectory Manager

Enterpriseapplications

Access & Federation Manager

Page 24: Présentation de l'offre IAM de LINAGORA LinID

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

Page 25: Présentation de l'offre IAM de LINAGORA LinID

25 / 82

Offre ForgeRock : « Open Source » mais pas Communautaire !!!

Directory Server

Access & FederationManager

Provisionning Manager

Directory Manager

Page 26: Présentation de l'offre IAM de LINAGORA LinID

26

Directory Server

Page 27: Présentation de l'offre IAM de LINAGORA LinID

27

Directory Server

Based on

Web administration interface

High performances

From 1 to 1 billions entries

Packages for the enterprise

Monitoring and backup

Page 28: Présentation de l'offre IAM de LINAGORA LinID

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

Page 29: Présentation de l'offre IAM de LINAGORA LinID

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

Page 30: Présentation de l'offre IAM de LINAGORA LinID

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

Page 31: Présentation de l'offre IAM de LINAGORA LinID

31

OpenLDAP Manager

Page 32: Présentation de l'offre IAM de LINAGORA LinID

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

Page 33: Présentation de l'offre IAM de LINAGORA LinID

33

Gestion des connexions

Page 34: Présentation de l'offre IAM de LINAGORA LinID

34

Édition du schéma

Page 35: Présentation de l'offre IAM de LINAGORA LinID

35

Directory Manager

Page 36: Présentation de l'offre IAM de LINAGORA LinID

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

Page 37: Présentation de l'offre IAM de LINAGORA LinID

37

LinID Directory Manager

User management Entry creation

Advanced search Workflows

Page 38: Présentation de l'offre IAM de LINAGORA LinID

38

Formulaire de recherche

Page 39: Présentation de l'offre IAM de LINAGORA LinID

39

Consultation d'une fiche

Page 40: Présentation de l'offre IAM de LINAGORA LinID

40

Gestion de la photo

Page 41: Présentation de l'offre IAM de LINAGORA LinID

41

Arbre de navigation

Page 42: Présentation de l'offre IAM de LINAGORA LinID

42

Personnalisation graphique

Page 43: Présentation de l'offre IAM de LINAGORA LinID

Intégration Workflow Activiti 1/5

Par exemple, création d'un processus de validation de création d'utilisateur.

Page 44: Présentation de l'offre IAM de LINAGORA LinID

Intégration Worflow Activiti 2/5

Page 45: Présentation de l'offre IAM de LINAGORA LinID

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.

Page 46: Présentation de l'offre IAM de LINAGORA LinID

Intégration Workflow Activiti 4/5

Affichage de l'avancement du processus et du formulaire à compléter par le responsable.

Page 47: Présentation de l'offre IAM de LINAGORA LinID

Démonstration Activiti 5/5

Page 48: Présentation de l'offre IAM de LINAGORA LinID

48

Access & Federation Manager

Page 49: Présentation de l'offre IAM de LINAGORA LinID

49

Access & Federation Manager

Based on

Application menu

Web administration interface

Graphical customization

Page 50: Présentation de l'offre IAM de LINAGORA LinID

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

Page 51: Présentation de l'offre IAM de LINAGORA LinID

51

Portail d'authentification

Page 52: Présentation de l'offre IAM de LINAGORA LinID

52

Liste des applications

Page 53: Présentation de l'offre IAM de LINAGORA LinID

53

Personnalisation graphique

Page 54: Présentation de l'offre IAM de LINAGORA LinID

54

Console d'administration

Page 55: Présentation de l'offre IAM de LINAGORA LinID

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/...)

Page 56: Présentation de l'offre IAM de LINAGORA LinID

56

Provisionning Manager

Page 57: Présentation de l'offre IAM de LINAGORA LinID

57

LinID Provisioning Manager

Based on

Javascript debugger

JS and Groovy scripting

Password synchronization

Multi protocols

Page 58: Présentation de l'offre IAM de LINAGORA LinID

58

Un « ETL » dédié aux annuaires

Page 59: Présentation de l'offre IAM de LINAGORA LinID

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

Page 60: Présentation de l'offre IAM de LINAGORA LinID

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

Page 61: Présentation de l'offre IAM de LINAGORA LinID

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

Page 62: Présentation de l'offre IAM de LINAGORA LinID

62 / 82

Démarche projet à adopter pour intégrer une solution IAM à votre SI

Page 63: Présentation de l'offre IAM de LINAGORA LinID

63 / 82

Architecture type

Page 64: Présentation de l'offre IAM de LINAGORA LinID

64 / 82

Architecture type

Page 65: Présentation de l'offre IAM de LINAGORA LinID

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.

Page 66: Présentation de l'offre IAM de LINAGORA LinID

66

Exemple : Organisation de la migration des données

● Migration de l'architecture actuelle● Depuis le schéma d'architecture actuel

Page 67: Présentation de l'offre IAM de LINAGORA LinID

67

Exemple : Organisation de la migration

● Migration de l'architecture● Introduction du proxy et d'OpenLDAP synchronisé à partir de SunDS

Page 68: Présentation de l'offre IAM de LINAGORA LinID

68

Exemple : Organisation de la migration

● Migration de l'architecture● Redirection des flux d'écriture vers OpenLDAP et maintien en synchronisation

des Sun DS

Page 69: Présentation de l'offre IAM de LINAGORA LinID

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

Page 70: Présentation de l'offre IAM de LINAGORA LinID

70

Synchronization withActive Directory

Page 71: Présentation de l'offre IAM de LINAGORA LinID

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

Page 72: Présentation de l'offre IAM de LINAGORA LinID

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

Page 73: Présentation de l'offre IAM de LINAGORA LinID

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

Page 74: Présentation de l'offre IAM de LINAGORA LinID

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

Page 75: Présentation de l'offre IAM de LINAGORA LinID

75

Self Service Password

Page 76: Présentation de l'offre IAM de LINAGORA LinID

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.

Page 77: Présentation de l'offre IAM de LINAGORA LinID

77

Standard password change page

Page 78: Présentation de l'offre IAM de LINAGORA LinID

78

Answer to a question

Page 79: Présentation de l'offre IAM de LINAGORA LinID

79

Use a mail

Page 80: Présentation de l'offre IAM de LINAGORA LinID

Merci de votre attentionMerci de votre attention

www.linagora.com @linagora

Page 81: Présentation de l'offre IAM de LINAGORA LinID

81 / 82

Exploitation des logs

● La solution intègre-t-elle un module permettant la consultation des logs et la personnalisation des rapports ?

Page 82: Présentation de l'offre IAM de LINAGORA LinID

82 / 82

Exploitation des logs via la pile ELK