WebSSO, synchronisation et contr´le des acc¨s via LDAP

download WebSSO, synchronisation et contr´le des acc¨s via LDAP

of 30

  • date post

    20-Oct-2014
  • Category

    Technology

  • view

    4.622
  • download

    1

Embed Size (px)

description

Présentation donnée lors de la conférence officielle au salon Solution Linux 2009.Intervenant : Clément OUDOT et Thomas CHEMINEAU

Transcript of WebSSO, synchronisation et contr´le des acc¨s via LDAP

Groupe LINAGORA - AliaSource

31 mars, 1er et 2 avril 2009

www.linagora.com

WebSSO, synchronisation etcontrle des accs via LDAP

Clment Oudot Thomas Chemineau

2

www.linagora.com

Sommaire gnral

Synchronisation d'identits WebSSO et contrle des accs Dmonstration

3

www.linagora.com

Sommaire

Synchronisation d'identits Prsentation du projet LSC Principes d'une synchronisation d'identits Fonctionnalits de synchronisation de LSC

4

www.linagora.com

Qu'est ce que LSC ? Projet Open Source, licence BSD Signifie LDAP Synchronisation Connector Anciennement issu du projet InterLDAP Couche applicative qui permet de synchroniser

des rfrentiels de donnes divers vers un annuaire LDAP

Technologie: JAVA Projet communautaire : http://lsc-project.org

Prsentation du projet LSC

5

www.linagora.com

Automatise les importations/exportations de donnes entre des rfrentiels de donnes et des annuaires LDAP

Alimentation d'annuaire supportant une base de donnes, un annuaire ou un fichier CSV comme source d'alimentation

Transformations spcifiques pour la gestion d'identits

Optimis pour la rapidit d'excution pour permettre une synchronisation continue

Synchronisation d'identits

6

www.linagora.com

Deux niveaux d'information sur une identit : L'existance d'une identit elle mme Les donnes spcifiques chaque identit

Oprations de synchronisation : Cration : report des nouvelles identits Suppression : retrait des identits supprimes Mise jour : pour une identit existant de part et

d'autre, recopie des donnes spcifiques

Principe de synchronisation d'identits

7

www.linagora.com

Des critres de synchronisation Type de la source (LDAP / base de donnes / CSV) Identification de la population cible Mapping et transformation des attributs sources

destination Actions diffrentes selon les oprations

(cration / mise jour / suppression)

Principe de synchronisation d'identits

8

www.linagora.com

3 niveaux de synchronisation: Base de donnes vers annuaire LDAP Fichier plat au format CSV vers annuaire LDAP Annuaire vers annuaire (ex: LDAP vers AD)

Fonctionnement gnral de LSC

9

www.linagora.com

Fonctionnement gnral de LSC

Interface (IBATIS)

Objet JDBC Srialisation (XML)

Objets LDAP

Abs

trac

tion

SQ

L

BEAN

Traitement LSC

Objet JNDI Objet LDAPMot

eur

Annuaire

Importation (HSQLDB)

Fichiers CSV Structuration SQL

BD

Bem

barq

ue

Base de donnes

Processus d'extraction au format CSV

Base de donnes

Annuaire

10

www.linagora.com

Les sources de synchronisation peuvent tre de diffrentes natures (SGBD, LDAP)

Diffrents formats d'entres: CSV: donnes injectes dans une base

embarque (HSQLDB) LDIF: donnes injectes dans un annuaire

embarqu (OpenDS)

Diffrents formats d'entres

11

www.linagora.com

Les synchronisations gnrent des rapports dtaills, sous diffrents formats: CSV: les modifications apportes sur l'annuaire

sont journalises au format CSV LDIF: les modifications apportes sur l'annuaire

sont journalises au format LDIF Diffrents niveaux de traabilits et choix des

oprations LDAP tracer

Diffrents formats de sorties

12

www.linagora.com

Des traitements simples, comme: Concatnation de plusieurs attributs sources Sparation des valeurs multiples d'un champ

source vers un attribut LDAP multivalu cible Suppression des caractres diacritiques

Des traitements avancs, comme : Tests d'existence des DN Peuplement avanc des attributs Prise en charge d'Active Directory

Traitements des donnes

13

www.linagora.com

Indispensable pour peupler les utilisateurs d'AD UserAccountControl permet de spcifier l'tat

d'un compte utilisateur, par exemple : ACCOUNTDISABLE PASSWD_CANT_CHANGE PASSWORD_EXPIRED

Prise en charge de la synchronisation du mot de passe sur un flux SSL

Prise en charge d'Active Directory

14

www.linagora.com

Cas d'utilisation gnral

ActiveDirectory

Interfacedegestiondecontenu

Populationd'administrateurs

ApplicationA

ApplicationBSourcededonnes

AnnuaireLDAPcentral

Traitementautomatisdesynchronisationdedonnes

Lgende:

Traitementmanueldemanipulationdedonnes

15

www.linagora.com

Sommaire

WebSSO et gestion des accs Concepts et dfinition du WebSSO Prsentation de LemonLDAP::NG X-domain et Liberty Alliance

16

www.linagora.com

Dfinition du WebSSO SSO signifie Single Sign On, qui peut se

traduire en franais par authentification unique.

Le SSO regroupe plusieurs fonctionnalits : Couple identifiant/mot de passe unique Transmission transparente des informations de

session aux applications Gestion des profils applicatifs, c'est--dire qui

accde quoi

17

www.linagora.com

SSO par agent

18

www.linagora.com

SSO par dlgation

19

www.linagora.com

SSO par mandataire inverse

20

www.linagora.com

Le protocole HTTP

GET http://www.linagora.com HTTP/1.1Accept: text/htmlUser-Agent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.7.6)

HTTP/1.1 200 OKDate: Thu, 13 Mar 2008 15:05:29 GMTServer: ApacheContent-Length: 264Content-Type: text/html; charset=iso-8859-1

Linagora, integrateur de reference sur le marche des logiciels libres

....

21

www.linagora.com

Prsentation de LemonLDAP::NG LemonLDAP est un ensemble de scripts et de

modules Perl utiliss travers mod_perl et le serveur HTTP Apache

LemonLDAP et LemonLDAP::NG sont des logiciels libres, les projets sont hbergs chez OW2 : http://lemonldap.objectweb.org

LemonLDAP a t cr par Eric German, du Ministre des Finances

La version ::NG a t crite par Xavier Guimard, de la Gendarmerie Nationale

22

www.linagora.com

Principes Le principe gnral est d'utiliser un annuaire

LDAP pour : authentifier l'utilisateur (vrification du mot de

passe) effectuer un contrle d'accs (selon les attributs

LDAP de l'utilisateur) approvisionner les applications (par

transmissions des attributs LDAP dans les en-ttes HTTP)

LemonLDAP::NG a t choisi pour le projet FederID (http://www.federid.org)

23

www.linagora.com

Fonctionnement gnral

24

www.linagora.com

Intgration d'une application

Pr-requis : Accs au code source et possibilit de le modifier disposer d'un langage permettant la lecture des en-

ttes HTTP Dsactiver le formulaire d'authentification local Lire les en-ttes HTTP, en particulier celle

fournissant l'identit de l'utilisateur

25

www.linagora.com

Ajout d'une application dans le WebSSO

Utilisation du Manager pour crer un nouvel hte virtuel dans la configuration LemonLDAP::NG : Nom de l'hte virtuel Rgles d'accs Informations transmises

Configuration du serveur Apache2 : Ajout d'un hte virtuel ou reprise de l'existant Ajout des paramtres d'appel du Handler

26

www.linagora.com

Prsentation du X-domain Un domaine est constitu d'un nom (linagora,

yahoo, google, ...) et d'une extension, appele aussi suffixe (fr, de, com, net, ...).

La spcification des cookies prcise qu'un cookie doit tre dclar sur un domaine et envoy aucun autre. Les navigateurs refusent d'ailleurs de transmettre un cookie un domaine diffrent de celui qui l'a mis.

Certaines applications sont parfois rparties sur plusieurs domaines, elles utilisent alors des mcanismes dits de cross-domain.

27

www.linagora.com

X-domain Plusieurs solutions techniques permettent de

faire du cross-domain, la plus rpandue consiste faire transiter le numro de session dans l'URL.

L'architecture cross-domain suppose gnralement l'existence d'un serveur matre unique, ralisant l'authentification et la mise en session des informations, et de un ou plusieurs esclaves, utilisant le numro de session transmis pour retrouver les informations.

28

www.linagora.com

Liberty Alliance

Applicationprotge

Agent (Handler)Agent (Handler)

PortailWebSSO

SessionsLDAP

Fournisseurd'identits

Identifiant

Mot de passeA

sser

tion

Con

sum

erA

sser

tion

Con

sum

er

1

2

3

4

5

6

7

8

9

10 11

12

13

1415

29

www.linagora.com

Dmonstration

Passons la pratique !

30

www.linagora.com

Merci de votre attention

Retrouvez-nous sur notre stand B25 !

Page 1SommairePage 3Page 4Page 5Page 6Page 7Page 8Page 9Page 10Page 11Page 12Page 13Page 14Page 15Dfinition du WebSSOSSO par agentSSO par dlgationSSO par mandataire inverseHTTP 4PrsentationPage 22Fonctionnement gnralIntgration d'une applicationAjout d'une application dans le WebSSOCross domainPage 27Liberty AlliancePage 29Page 30