Présentations données lors du séminaire de LINAGORA intitulé : "Solutions d'identité et de sécurité Open Source LinID et LinPKI".
Intervenants :
- David Carella et Esteban Pereira, experts sécurité et identité, LINAGORA
1. Solutions d’identité et de sécurité
Open Source
LinID et LinPKI
David CARELLA et Esteban PEREIRA
Séminaire LinID & LinPKI
Septembre 2011 WWW.LINAGORA.COM
2. Agenda
● Présentation LINAGORA
● LinID :
● Découvrir la version 1 de LemonLDAP (authentification SAML,
Shibboleth ou OpenID)
● LinPKI :
● Partager vos fichiers volumineux de manière sécurisée avec
LinShare
● Signature électronique en Open Source... c’est possible avec
LinSign
2
2
3. LINAGORA : Présentation de la société
Logiciels et services Évolution du CA (M€)
pour réussir les grands
projets du Libre Secteurs d’activités
Paris – Lyon – Marseille – Toulouse
Bruxelles – San Francisco
Métiers
Quelques clients
3
3
4. Une gamme logicielle professionnelle
LINAGORA développe du logiciel libre. 100 % du code source est disponible.
Nos clients contribuent au développement des offres, à la pérennisation des produits et de
leur communauté au travers des contrats de support.
Truffle 100/2010 : Linagora est le seul éditeur Open Source présent (90 e position) – (Truffle
100 : classement des 100 premiers éditeurs de logiciels français).
Investissement en R&D en 2010 : > 2,5 M€
Messagerie Confiance Gestion et Progiciel de
collaborative numérique fédération des gestion (ERP)
identités
4
5. Offre Identité LinID
Esteban PEREIRA
Expert IAM LinID
epereira@linagora.com
Séminaire LinID
Septembre 2011 WWW.LINAGORA.COM
6. Offre Identité : Vue d’ensemble
LINID DIRECTORY SERVER LINID DIRECTORY MANAGER
LINID PROVISONNING LINID ACCESS &
MANAGER FEDERATION MANAGER
LinID est la seule suite logicielle de gestion d’identités complète
Open Source, qui vous permet de gagner en efficacité et en sécurité
dans la gestion des données d’identité, d’accès et d’habilitation.
6
7. Découvrir la version 1 de LemonLDAP
ou comment uniformiser vos méthodes
d’authentification avec SAML,
Shibboleth ou OpenID !
WWW.LINAGORA.COM
8. SOMMAIRE
● Présentation du WebSSO
● Le protocole SAML2
● Fonctionnement de LemonLDAP::NG
● Support du SAML2 et autres nouveautés
8
9. Le WebSSO
● SSO signifie « Single Sign On », qui peut se traduire en français par
« authentification unique »
● Le WebSSO se consacre à l'authentification unique pour les applications
Web, c'est-à-dire des applications client-serveur dont le client est un
navigateur Web (IE, Firefox, etc.)
● Le principe de base est d'intercepter les requêtes entre le client et le
serveur, et indiquer au serveur que le client est bien authentifié
● Techniquement, cela repose essentiellement sur la gestion d'une
session SSO stockée au niveau du serveur WebSSO et liée à un cookie
dans le navigateur de l'utilisateur
● Deux architectures complémentaires existent :
● WebSSO par délégation
● WebSSO par mandataire inverse
9
12. Autres fonctionnalités
● Le rôle standard du WebSSO est de propager l'authentification sur des
applications Web
● En supplément, ces fonctionnalités sont souvent présentes dans les
produits de WebSSO :
● Contrôle d'accès aux applications (qui a accès à quoi)
● Transfert d'informations complémentaires à l'identifiant de l'utilisateur
(nom, mails, etc.)
● Gestion du mot de passe (interface de changement de mot de passe,
réinitialisation, etc.)
12
13. Le protocole SAML
● SAML est un protocole destiné à la fédération d'identités
● La fédération d'identités a pour objectif de lier des fournisseurs de
services (SP) et des fournisseurs d'identités au sein d'un ou plusieurs
cercle de confiance (CoT)
● SAML c'est du SSO, mais aussi :
● Du SLO (Single Logout)
● Du partage d'attributs
● De l'autorisation (point de décision)
● ...
● Les standards d'origine SAML1, Liberty Alliance et Shibboleth
convergent aujourd'hui vers SAML2
13
13
15. Concepts SAML
● Communication indirecte entre le SP et l'IDP via le navigateur de
l'utilisateur avec différentes méthodes possibles :
● HTTP-Redirect
● HTTP-POST
● HTTP-Artifact (GET et POST)
● Communication directe entre le SP et l'IDP par SOAP
● Gestion de la sécurité des messages par XMLsec
● Possibilité de recherche des IDP par cookie de domaine commun
(Common Domain Cookie)
● Gestion d'identifiants persistants, temporaires, ou lié à une donnée
(mail par exemple)
● Gestion des contextes d'authentifications et de leur hiérarchie
15
15
16. Présentation de LemonLDAP::NG
● LemonLDAP::NG est un logiciel libre (licence GPL) hébergé chez OW2 :
http://lemonldap.ow2.org
● Développé à l'origine par Xavier GUIMARD pour les besoins de la
Gendarmerie nationale
● Produit basé sur Apache et mod_perl, entièrement écrit en Perl
(moteur et interfaces)
● Fournit un portail d'accès dynamique et une interface d'administration
16
16
23. Les autres nouveautés de la version 1.0
● Fournisseur SAML2, CAS et OpenID
● Choix d'authentification : plusieurs modes peuvent être proposés à
l'utilisateur (par exemple authentification LDAP ou OpenID)
● Configuration complète dans l'interface graphique
● Choix des thèmes du portail
● Handlers pour Sympa et Zimbra
● Auto-validation de formulaires
● Recherche récursive dans les groupes LDAP
● ...
23
23
24. Offre Sécurité LinPKI
David CARELLA
Expert Sécurité PKI
dcarella@linagora.com
Séminaire LinPKI
Septembre 2011 WWW.LINAGORA.COM
25. Offre Sécurité : Vue d’ensemble
LinPKI instaure
un environnement
de confiance en
Open Source.
Des solutions clés
en main pour :
authentifier les
personnes et les
machines, assurer la
confidentialité au
sein de votre SI,
dématérialiser vos
documents grâce à
la signature
électronique
sécurisée.
25
26. Partager vos fichiers volumineux de
manière sécurisée avec LinShare
WWW.LINAGORA.COM
27. LinShare : Références
Références LinShare :
● Conseil d’État, 3 500 collaborateurs
● INSERM (Institut national de la santé et de la recherche médicale), 13
000 utilisateurs (Web et plugin Outlook)
● MIOMCT (Ministère de l’Intérieur, de l’Outre-mer, des Collectivités
territoriales et de l’Immigration), 100 000 agents (utilisation couplée
avec OBM)
● CIRB (Centre d’Informatique pour la Région Bruxelloise)
● Mairie de Marseille, partage avec des partenaires extérieurs
● TGI (Techniques Gestion Informatique)
27
28. LinShare : Présentation
Spécialement conçue pour sécuriser les échanges
dématérialisés des entreprises qui placent la confidentialité
et la traçabilité au cœur de leurs problématiques d’échanges,
LinShare apporte une solution simple à mettre en œuvre et
totalement intuitive.
Utilisations de LinShare :
● Déposer des fichiers dans son espace personnel ;
● Partager des fichiers avec des collaborateurs internes ou
externes ;
● Gérer les partages et les groupes ;
● Sécuriser les échanges (signature et chiffrement) ;
● Traçabilité des échanges (partages, téléchargements, etc.) ;
● Historique et reporting des actions ;
● Intégration et communication avec des applications externes
(Outlook, Thunderbird, OBM).
28
28
29. LinShare : Dépôt de fichiers
Dépôt, mise à jour et suppression de fichiers,
Fonction de chiffrement et déchiffrement à usage personnel (coffre-fort) ou en sécurisation d’échange,
Ajout de commentaires et aperçu automatique en miniature des documents bureautiques.
29
29
30. LinShare : Partage de fichiers
Mise en place de partage vers des collaborateurs internes ou externes,
Association de groupes ou d’utilisateurs à un partage,
Partage simple ou sécurisé.
30
30
31. LinShare : Utilisateurs
Création de compte invité pour des dépôts temporaires,
Gestion des comptes (recherche, création, modification, suppression, autorisations),
Import d’utilisateurs depuis un annuaire, base de données, Active Directory.
31
31
33. LinShare : Sécurité
● Contrôle du dépôt des fichiers :
● vérification du type de contenu et de la taille des fichiers déposés,
● intégration avec un service antivirus,
● horodatage via un appel à une autorité d’horodatage (TSA).
● Signature électronique de documents :
● création et vérification de signature XAdES, standard européen.
● Chiffrement de fichiers :
● par clé symétrique AES (déchiffrements possibles : en et hors ligne).
● Authentification :
● SSO (Single Sign-On),
● par mot de passe (via un annuaire LDAP ou Active Directory).
● Partage sécurisé par mot de passe temporaire.
33
33
34. LinShare : Traçabilité
● Historique de recherche utilisateur
● Audit administrateur et module de statistiques / supervision JMX
34
34
35. LinShare : Console d’administration web
Administration web :
● Personnalisation visuelle :
● message d’accueil,
● logo entreprise ;
● Paramétrage des comptes ;
● Paramétrage de partage :
● taille de comptes,
● taille de fichiers,
● Règles d’expiration,
● Filtrage MIME ;
● Paramétrage de sécurité :
● signature électronique,
● chiffrement,
● horodatage.
35
35
36. LinShare : Intégration applicative
● Plugin Outlook et extension Thunderbird, (cf. les captures ci-dessous)
● Intégration OBM (SSO, annuaire et contacts, webmail),
● API Web Service REST pour communiquer avec des composants externes :
● plugin Alfresco, intégration applicative pour les partages de documents
signés, ...
36
36
37. LinShare : Intégration via son API REST
API REST et Web Service pour communiquer avec des composants
externes. Plugin pour Outlook et Thunderbird.
37
37
38. LinShare : Éléments complémentaires
● Installation simplifiée et multi-système, via un assistant,
● Notification d’action envoyée par courriel :
● notification de partage,
● accusé de téléchargement,
● notification de mise à jour, etc.
● Filtre MIME de fichiers :
● autorisation, avertissement ou rejet.
● Gestion des quotas utilisateurs,
● Temps de rétention des fichiers en relation avec leur taille :
● selon le volume des fichiers,
● selon la durée de stockage.
● Compression de données lors de partages multiples,
● Compatibilité avec les annuaires du marché :
● Active Directory, OpenLDAP, Sun, Novell.
38
38
39. LinShare : Technique et licence
Techniques :
Application développée en Java JEE,
Indépendant des bases de données (PostgreSQL, MySQL, etc.),
Indépendant des systèmes d’exploitation (Windows, GNU/Linux, Solaris, etc.),
Nécessite au choix :
– soit un conteneur Jetty ou Tomcat,
– soit un serveur d’applications (JBoss, GlashFish, etc.).
Licence :
Licence libre (open source) :
GNU Affero General Public License, version 3
Modèle économique :
Souscription en support du produit via l’offre OSSA de LINAGORA,
Développement et intégration spécifique.
39
39
43. LinSign : Présentation (1/2)
L’application LinSign fournit un service de signature électronique de
documents depuis le poste client.
LinSign est conçu dans un esprit de généricité et de modularité vis-à-vis des
applications. Elle peut être mise en œuvre de plusieurs façons regroupées en trois
éditions.
LinSign Standalone
LinSign est utilisée comme un produit prêt à être utilisé sur le poste client. C’est une
sorte de « boîte noire » existante sous plusieurs packagings, permettant plusieurs
modes de déploiement :
① Installation
hors connexion
② Déploiement
par Java Web Start
③ Exécution comme
applet, via un portail
43
44. LinSign : Présentation (2/2)
LinSign Portal
LinSign est utilisée dans son portail web en mode distant et connecté, avec les
navigateurs standards du marché.
LinSign API
La librairie LinSign API peut être intégrée dans toutes
applications basées sur les frameworks web Tapestry, JSF,
Seam et JSP.
Ainsi, un projet applicatif métier peut s’approprier LinSign
en l’intégrant, voire en l’adaptant à ses propres besoins
dans le cadre du développement d’une l’application (e.g.
LinShare).
44
45. LinSign : Certification de sécurité
LinSign est réalisée selon sa cible de sécurité conformément au profil de protection
« Application de création de signature électronique » des Critères Communs.
Certification CSPN (Certification de Sécurité de Premier Niveau)
Dans un premier temps, LinSign sera évaluée et certifiée dans le cadre de
la CSPN (reconnue au niveau national, en France).
Cette certification est en cours (2011).
Contraintes sur SHA-256 et édition client autonome (Standalone).
Certification Critères Communs (futur)
Dans un second temps, LinSign sera évaluée et certifié dans le cadre des
Critères Communs, au niveau EAL3+ (reconnus au niveau international).
Ces critères ont été pris en compte dès le début de la réalisation de LinSign.
En revanche, cette certification elle-même fera l’objet d’un projet futur.
45
46. LinSign : Licence libre
La licence libre de l’application LinSign
LINAGORA a opté pour la licence AGPL v3 :
GNU Affero General Public License, version 3
Caractéristiques de la licence AGPL v3 :
● Elle est dérivée de la Licence publique générale GNU GPL,
● Elle couvre les interactions avec des produits propriétaires à travers un
réseau comme Internet,
● La version 3 est compatible avec la version 3 de la GPL.
46
47. LinSign : Caractéristiques fonctionnelles
LinSign est configurable via un système de gestion de politiques
de signature qui lui permet de :
– s’adapter à de nombreux formats de documents à signer et de signature,
– supporter de nombreux divers types de magasins de certificats,
– garantir l’invariance de la sémantique des documents à signer.
Gestion des politiques de signature :
– type de certificat X.509v3 (qualifié ou pas, usage de la clé, etc.) ;
– chaîne de certification : liste des AC acceptées ;
– politique de signature acceptée (identifiant OID) ;
– formats des éléments à signer (PDF, ODF Text, etc.) ;
– formats de la signature (PDF, XAdES, etc.) ;
– types de token (carte à puce, navigateurs web, etc.) ;
– types de signature (co-signature et contre-signature) [futur] ;
– paramètres techniques (algorithmes de signature et des condensés, etc.).
Invariance de la sémantique des documents :
– support du format PDF/A (ISO 19005), contrôle de l’invariance, etc.
47
49. LinSign : Caractéristiques techniques (2/3)
LinSign s’adapte à l’hétérogénéité des contextes applicatifs et des
environnements clients :
● Windows, Macintosh, GNU/Linux, Unix ;
● Navigateurs web : Firefox, Internet Explorer, Safari ;
● Java JEE (serveurs de servlets).
Utilisation de certificats X.509 v3 :
● Validation du certificat :
● AC de confiance, date de validité, usage de clé, etc.
Formats des documents à signer :
● PDF et PDF/A,
● OpenDocument Format Text,
● Texte pur,
● HTML,
● XML,
● Courriel.
49
50. LinSign : Caractéristiques techniques (3/3)
Utilisation de différents formats de signature :
PDF/A, ODF Text, XAdES 1.3.2, XML-DSig, CMS/PKCS #7, S/MIME ;
Roadmap : PAdES, CadES, S/MIME.
Utilise différents supports pour la signature :
Les cartes à puce IAS ECC : Gemalto, Oberthur, Sagem ;
Les tokens USB cryptographiques : Aladdin ;
Les magasins des navigateurs web : Mozilla NSS (Firefox), Microsoft
CryptoAPI (Internet Explorer), Mac OS Keychain (Safari) ;
Fichiers PKCS #12 ;
Fichiers Java KeyStore (JKS).
Algorithmes cryptographiques supportés :
Algorithme asymétrique : RSA (PKCS #1), clés : 1024 et 2048 bits ;
Fonctions de hachage : SHA-1, SHA-256.
50
51. LinSign : Signature standard XAdES
Signature XML-DSIG détachée
<signature>
<reference> a.pdf
<reference>
</signature>
zip
Signature au format XAdES ETSI TS 101 903 v1.3.2 (2006-03)
Signature XAdES Propriétés XAdES signées :
Signature XML-DSIG (SigningTime)
(SigningCertificate)
Signed Signa- Key Signed Unsigned (SignaturePolicyIdentifier)
Info ture Info properties properties (SignatureProductionPlace)?
(SignerRole)?
51
52. LinSign : Environnement système et matériel
Machine virtuelle Java JRE/JDK 6
Par défaut, Java JRE/JDK 6 ne supporte pas la signature XML SHA-256
avec Microsoft Windows. Le JDK [SunMSCapi] n’implémente pas :
– la signature au format brut ;
– la signature pour le SHA-256.
Sous GNU/Linux, le framework swing ne gère que l’environnement de
bureau Gnome.
→ Pour compenser ces manques, des palliatifs ont été implémentés.
Interface standard PKCS #11
Entièrement configurable : par exemple avec la carte cryptographique
Oberthur ID-One IAS ECC (compatible avec la carte du citoyen européen et
les standards de signature électronique. La carte est en fin de certification
EAL4+ pour la signature électronique).
Navigateur web Firefox
Accès au magasin sur tous les systèmes d’exploitation (Windows,
GNU/Linux, Mac OS, etc.) via la librairie Mozilla NSS.
52
54. LinSign : Cinématique d’une signature électronique
Sept étapes pour signer des documents :
① Acception des mentions légales ;
② Choix de la politiques de signature ;
③ Sélection des fichiers à signer ;
④ Sélection du magasin de certificats ;
⑤ Sélection d’une clé de signature ;
⑥ Consentement à signer (« Lu et approuvé »), puis signature ;
⑦ Liste des fichiers signés.
54
55. Merci de votre attention
Contact :
LINAGORA – Siège social
80, rue Roque de Fillol
92800 PUTEAUX
FRANCE
Tél. : 0 810 251 251 (tarif local)
Fax : +33 (0)1 46 96 63 64
Mail : info@linagora.com
Web : www.linagora.com
WWW.LINAGORA.COM