L’architecture de l’espace de stockage

Slides:



Advertisements
Présentations similaires
Active Directory Windows 2003 Server
Advertisements

PC / Traitement numérique / Contrôle Environnement logiciel
Les Web Services Schéma Directeur des Espaces numériques de Travail
ACCUEIL DES NOUVEAUX UTILISATEURS DES RÉSEAUX INFORMATIQUES
Exposé de système présenté le 2 décembre 2004, Par Rémy Lataix
Cycle de vie de documents web
Laccès distant aux bases bibliographiques J. Gutierrez / B.Nominé – Université Nancy 2.
03/05/05 - RB1 inJAC Présentation générale. 03/05/05 - RB 2 Lapproche ESUP du CMS Avoir un référentiel de documents structurés, intégré au portail en.
13/04/05 - RB1 Montpellier 24/03/2005 Les interactions entre le SSO ESUP et le mécanisme de propagation d'identité
Département Édition - Intégration SEMINAIRE SOA Migration du canal Esup MonDossierWeb Olivier Ziller / Charlie Dubois Université Nancy 2 16 octobre 2007.
Pascal AUBRY François DAGORN IFSIC / Université de Rennes 1
Université Nancy 2 - CRI Propositions de mécanisme de SSO dans un environnement d’applications web.
Environnement Numérique de Travail Université Montpellier I
Copyright 2008 © Consortium ESUP-Portail EsupDay /02/2009 Atelier stockage Raymond Bourges, Université de Rennes 1.
Université Rennes 2 Haute Bretagne
05/07/07ESUP-Days IV Bravin - Jouin - Monclin Celcat à lUniversité de Reims Champagne - Ardenne.
Université Rennes 2 Haute Bretagne Environnement Numérique de Travail Formation pour la mise en place de lapplication « Esup-Helpdesk » pour le CRI (demande.
Outils de communication. 17/11/2005Raymond Bourges2 Outils de communication Site Web Documentation (Bientôt gérée avec inJAC) Espace de téléchargement.
ESUP-FWA Connexion simplifiée à Apogée & Harpège via l'ENT
Nouvelle version du canal Esup MonDossierWeb
Etat d'avancement ORI-OAI Interaction avec les ENT.
Serveur jeu Le serveur fait partie d'un logiciel de jeu en ligne multi joueur en architecture client serveur. Il répond à des demandes.
Une solution personnalisable et extensible
Conception de la sécurité pour un réseau Microsoft
Le mécanisme de Single Sign-On CAS (Central Authentication Service)
Copyright 2010 © Consortium ESUP-Portail TOC ESUP-Days 10, Paris, 2 juillet 2010 De LDAP à Kerberos à lUniversité de Rennes 1 Pascal Aubry François Dagorn.
Le point sur l’incubateur
Single Sign-On open source avec CAS (Central Authentication Service)
Plan de formation Chapitre 1 : Présentation de SAP
TP 3-4 BD21.
Cours Présenté par …………..
S. CAGNI, S. PICARD et A. CORDIER Vous avez dit :.
La configuration Apache 2.2 Lhébergement virtuel.
Système de stockage réseaux NAS - SAN
Sécurité Informatique
Active Directory Windows 2003 Server
Plateforme de gestion de données de capteurs
Etude des Technologies du Web services
SECURITE DU SYSTEME D’INFORMATION (SSI)
XML-Family Web Services Description Language W.S.D.L.
420-B63 Programmation Web Avancée Auteur : Frédéric Thériault 1.
1 Sécurité Informatique : Proxy Présenter par : Mounir GRARI.
Saisie de l’Offre de Formation (SOF)
Mise en place d'un serveur SSL
Protocole 802.1x serveur radius
WINDOWS Les Versions Serveurs
Développement dapplications web Authentification, session.
SSO : Single Sign On.
Module 3 : Création d'un domaine Windows 2000
4 - Annuaires Les Annuaires d ’Entreprises Offres et solutions
Date : Juillet 2014 Formation : TAI Formateur : Tayeb BENDJELTI
0 Objectifs de la session n°1  Revenir sur toutes les bases théoriques nécessaires pour devenir un développeur Web,  Découvrir l’ensemble des langages.
GESTION DES UTILISATEURS ET DES GROUPES
Windows 2003 Server Modification du mode de domaine
FTP : File Transfer Protocol (protocole de transfert de fichier ) est un protocole de communication destiné à l'échange informatique de fichiers sur.
Module 3 : Création d'un domaine Windows 2000
Présentation ESTRABOX
En route vers le déploiement . . .
SNMP Simple Network Management Protocol
JeanDo Lénard – Fondamentaux de l'Internet – Hetic –30 Janvier 2007 page 1 Fondamentaux de l'Internet (FDI) JeanDo Lénard
L’authentification Kerberos
Youssef BOKHABRINE – Ludovic MULVENA
V- Identification des ordinateurs sur le réseau
Module 2 3. Stocker ses fichiers dans son porte-documents KOSMOS.
Proxy filtrant pour GSB
LE SERVEUR PROXY Un serveur proxy (traduction française de «proxy server», appelé aussi «serveur mandataire») est à l'origine une machine faisant fonction.
Sécurité des Web Services
Cette session avec la démo disponible prochainement sur le site « interop » :
CEGID et environnement réseau Groupe PGI Académie de Grenoble.
KOSMOS 1 Outils transversaux Module 7 1.L’annuaire 2.La recherche d’informations 3.La réservation de ressources.
Transcription de la présentation:

L’architecture de l’espace de stockage Groupe 2F – version 4.0 – 11 décembre 2003 Table des matières Statut de ce document Cliquez ici pour revenir au début Cliquez ici pour dérouler le diaporama

Table des matières Architecture logique Schéma complet Flux d’informations entre bloc logiques Architecture logicielle Le serveur WebDAV Le module « authentification » Le module « autorisation » L’abstraction du système de fichiers Le système d’ACLs Le gestionnaire de groupes L’application CGI de gestion de l’espace de stockage Versions prévues Adressage logique de l’espace physique Ce qui pourrait être la feuille de route du groupe 2F Les questions en suspens

Statut de ce document Historique Validation du document 2003-12-11 – version 4.0 P. Aubry, J.-G. Avelin, R. Bourges, P. Gambarotto, V. Mathieu, J. Marchal, S. Qiang, B. Sor Ré-organisation de la feuille de route Principes de mise en œuvre de la version 1 2003-12-03 – version 3.2 V. Mathieu : Renumérotation des versions (V0 devient V1) Ajout de la problématique des quotas Modification de l’adressage logique des espaces utilisateurs (basé sur les identifiants) 2003-11-12 – version 3.1 Les modules « authentification », « autorisation » et « système de fichiers » sont clairement indiqués comme étant des modules du serveur WebDAV (P. Gambarotto) Ajouts de l’adressage logique de l’espace physique (P. Aubry) Planification des versions (P. Aubry) 2003-11-11 – version 3 Intégration de Access Control Protocol (B. Sor & P. Gambarotto) 2003-11-06 – version 2 Intégration du gestionnaire de groupes et du système d’ACLs (P. Aubry, R. Bourges, V. Mathieu & A. Kermarrec) 2003-10-04 – version 1 (P. Aubry) Validation du document au plus tard le mardi 16 décembre 2003 La version 4.0 est la dernière version des spécifications avant mise en œuvre de la version 1 Planification des développements (feuille de route)

trusted network digital workspace Les zones en présences En bleu : l’Environnement de Travail Numérique En jaune : un réseau de confiance En blanc : le reste de l’internet

trusted network digital workspace physical storage Un espace de stockage physique, à propos duquel on ne fait pour l’instant aucune hypothèse

untrusted application operating system untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application untrusted application physical storage Les clients de l’espace de stockage : Des systèmes d’exploitation Des navigateurs Des applications

untrusted application operating system untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application untrusted application ? physical storage Problématique Que mettre en place pour que tous ces clients puissent accéder à l’espace de stockage ?

untrusted application operating system untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application untrusted application protocol (DAV) physical storage Le protocole d’accès L’espace de stockage devant être accédé depuis tout l’internet, on choisit WebDAV

untrusted application operating system untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application untrusted application security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) physical storage Confidentialité L’espace devant être accédé depuis n’importe quel point de l’internet, les échanges doivent être chiffrés (HTTPS pour les applications et WebDAV sur HTTPS pour les systèmes d’exploitation).

untrusted application operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application SSO authentication untrusted application HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) physical storage Les applications s’appuient sur une authentification SSO Les systèmes d’exploitation s’appuient sur une authentification HTTP Note : Selon les politiques de sécurité des établissements, on peut ou non autoriser l’accès à l’espace de stockage de manière non sécurisée depuis un réseau de confiance.

untrusted application operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application SSO authentication untrusted application HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication physical storage Authentification Le protocole WebDAV n’offre pas nativement d’authentification Il faut donc l’implémenter en fonction de nos besoins

untrusted application operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application SSO authentication untrusted application HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication classical user database physical storage Pour les systèmes d’exploitation Puisqu’ils ne parlent pas SSO, il faut implémenter une authentification HTTP classique, en s’appuyant sur le référentiel utilisateur

untrusted application operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application (CAS client) SSO authentication untrusted application HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication classical trust user database physical storage Pour les applications de confiance Puisque l’on peut leur faire confiance (clients CAS), on leur délègue l’authentification. Celles-ci doivent néanmoins indiquer à l’espace de stockage quel est l’utilisateur authentifié

untrusted application (CAS proxy) operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application (CAS client) SSO authentication untrusted application (CAS proxy) HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication classical trust SSO user database physical storage SSO service Pour les autres applications On s’appuie sur le SSO (les applications doivent alors être des mandataires CAS) Le service SSO est utilisé pour valider les tickets CAS fournis par les applications

untrusted application (CAS proxy) operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application (CAS client) SSO authentication untrusted application (CAS proxy) HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication classical trust SSO user database physical storage SSO service L’authentification est une couche logique (module ou service) qui a pour unique but de répondre à la question suivante : L’utilisateur authentifié a-t-il le droit d’accéder à l’espace de stockage ? En particulier, il ne dit pas ce que l’utilisateur authentifié a le droit de faire sur l’espace de stockage (cf plus loin).

untrusted application (CAS proxy) operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application (CAS client) SSO authentication untrusted application (CAS proxy) HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication classical trust SSO user database physical storage SSO service L’authentification est gérée selon la provenance des requêtes système d’exploitation application de confiance application autre navigateur web (cf plus loin)

untrusted application (CAS proxy) operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application (CAS client) SSO authentication untrusted application (CAS proxy) HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication classical trust SSO granting user database physical storage ACLs profiling service SSO service L’autorisation est une couche logique (module ou service) qui a pour but de répondre à la question suivante : Tel utilisateur a-t-il le droit d’effectuer telle opération sur tel fichier/répertoire/volume ? Pour cela, il s’appuie sur un service d’ACL et un gestionnaire de profils (cf plus loin).

untrusted application (CAS proxy) operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser digital workspace trusted application (CAS client) SSO authentication untrusted application (CAS proxy) HTTP authentication HTTP authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) protocol (DAV) authentication classical trust SSO granting user database filesystem physical storage ACLs profiling service SSO service Accès au système de fichiers le système physique de stockage est abstrait par une couche logique qui permet de prendre en compte différents protocoles d’accès (NFS, CIFS, …) L’accès au système de fichiers gère la problématique des quotas, en renvoyant l’erreur HTTP adéquate lors d’un dépassement de quota.

untrusted application (CAS proxy) operating system SSO authentication untrusted web browser trusted network trusted operating system trusted web browser trusted web browser digital workspace trusted application (CAS client) SSO authentication untrusted application (CAS proxy) HTTP authentication HTTP authentication SSO authentication security (SSL) security (SSL) protocol (CGI) protocol (CGI) security (SSL) security (SSL) protocol (DAV) authentication classical trust SSO granting user database filesystem physical storage ACLs profiling service SSO service Accès à l’espace de stockage depuis les navigateurs possible avec une authentification CAS Le schéma de l’espace de stockage est complet. Voyons maintenant les interactions entre les différents blocs…

digital workspace security (SSL) protocol (DAV) La couche « protocole » est accédée par les navigateurs et les systèmes d’exploitation

Can I access the storage ? digital workspace security (SSL) protocol (DAV) Can I access the storage ? authentication La couche « protocole » s’appuie sur la couche « authentification » pour savoir si un utilisateur peut accéder à l’espace de stockage.

Is this user/password known? Can I access the storage ? digital workspace security (SSL) protocol (DAV) Is this user/password known? Can I access the storage ? authentication user database La couche « authentification » s’appuie sur le référentiel utilisateur pour valider les accès des systèmes d’exploitation…

digital workspace security (SSL) protocol (DAV) Can you validate this ticket and tell me which user it was emited for? Is this user/password known? Can I access the storage ? authentication user database SSO service …et sur le service SSO pour valider les tickets CAS des applications clientes et des navigateurs.

digital workspace security (SSL) protocol (DAV) Can you validate this ticket and tell me which user it was emited for? Is this user/password known? Can I access the storage ? authentication Can this user perform this operation on this file/directory/volume? granting user database SSO service La couche « authentification » s’appuie sur la couche « autorisation » pour déterminer si un utilisateur peut effectuer une opération sur un fichier/répertoire/volume particulier.

digital workspace security (SSL) protocol (DAV) Can you validate this ticket and tell me which user it was emited for? Is this user/password known? Can I access the storage ? authentication Can this user perform this operation on this file/directory/volume? granting Which users and which groups can perform this operation on this file/directory/volume? user database ACLs SSO service La couche « autorisation » s’appuie sur un système d’ACL (Access Control List) pour déterminer quels utilisateurs/groupes d’utilisateurs ont le droit d’effectuer l’opération voulue sur le fichier/répertoire/volume voulu…

digital workspace security (SSL) protocol (DAV) Can you validate this ticket and tell me which user it was emited for? Is this user/password known? Can I access the storage ? authentication Can this user perform this operation on this file/directory/volume? Does this user belong to one of these groups? granting Which users and which groups can perform this operation on this file/directory/volume? user database ACLs grouping service SSO service … et sur un gestionnaire de profils pour déterminer si l’utilisateur connecté appartient ou non aux groupes autorisés.

digital workspace security (SSL) protocol (DAV) Can you validate this ticket and tell me which user it was emited for? Is this user/password known? Can I access the storage ? authentication Can this user perform this operation on this file/directory/volume? Does this user belong to one of these groups? granting Do the dirty job for me! Which users and which groups can perform this operation on this file/directory/volume? filesystem user database physical storage ACLs profiling service SSO service Finalement, la couche « autorisation » s’appuie sur la couche « système de fichiers » pour lui laisser faire le sale boulot.

digital workspace security (SSL) protocol (DAV+ACP) authentication granting (ACP) user database filesystem ACLs physical storage profiling service SSO service On peut maintenant résumer tout ce qu’il faut pour mettre en œuvre l’espace de stockage.

Ce qu’il faut pour mettre en œuvre l’espace de stockage 1 2 3 4 5 6 Un serveur WebDAV Un module d’authentification Un module d’autorisation Une abstraction du système de fichiers Un système d’ACL Un gestionnaire de profils

Architecture logicielle digital workspace security (SSL) protocol (CGI) storage component security (SSL) WebDAV server protocol (DAV+ACP) filesystem authentication granting (ACP) SSO trust classical physical storage ACLs SSO service profiling service user database Les blocs décrits dans les schémas précédents ne sont que des blocs logiques, décrivant essentiellement les flux d’informations au sein de l’espace de stockage Le schéma ci-dessus décrit l’espace de stockage en terme de briques logicielles Les blocs « système de fichiers », « authentification » et « autorisation » sont à considérer comme des modules du serveur WebDAV Voyons maintenant en détail chaque brique logicielle

Le serveur WebDAV WebDAV server Fonctionnalités attendues : security (SSL) CGI storage application protocol (CGI) security (SSL) protocol (DAV+ACP) WebDAV server filesystem authentication granting (ACP) Fonctionnalités attendues : WebDAV (selon RFC 2518 pour pouvoir être compatible avec les systèmes d’exploitation et les navigateurs) Note : les extensions de versioning (RFC 3253) ne seront très certainement pas prises en compte (cf http://www.webdav.org/specs/). WebDAV ACP (Access Control Protocol, selon http://www.webdav.org/acl/) SSL pour la confidentialité Doit être suffisamment modulaire pour s’appuyer sur : Un module d’authentification Un module d’autorisation Un module d’accès au système physique de fichiers Doit pouvoir être distribué pour la montée en charge et la redondance Remontées d’erreur : 500 (Internal server error) en cas d’incident ou erreur de protocole Pistes : Un serveur J2EE existant Remarques : Le serveur Webdav est nécessaire dès la première version

Le module d’authentification protocol (DAV+ACP) WebDAV server authentication SSO trust classical SSO service user database Fonctionnalités attendues : Doit être intégrable dans le serveur WebDAV Doit répondre à la question « l’accès à l’espace de stockage est-il possible pour ce client ? » Doit différencier les clients pour leur appliquer des contrôles différents pour : Directement sur un référentiel utilisateur (login/password) Sur un serveur CAS (ST ou PT) Sans contrôle pour les applications de confiance Doit s’appuyer sur : Le référentiel utilisateurs pour les authentifications classiques (systèmes d’exploitation) Le service SSO pour les authentification SSO (navigateurs) Remontées d’erreur : En cas d’échec : 401 (Unauthorized) pour les systèmes d’exploitation et applications 302 (Found) pour les navigateurs (redirection vers le serveur CAS) 500 (Internal server error) en cas d’incident 503 (Service unavailable) en cas d’indisponibilité (du serveur SSO ou du référentiel utilisateur par exemple) Pistes : PAM (pas forcément très facile à brancher sur du J2EE)

Le module d’autorisation WebDAV server protocol (DAV+ACP) granting (ACP) Fonctionnalités attendues : Doit être intégrable dans le serveur WebDAV Doit, pour un utilisateur préalablement authentifié, répondre à la question « l’utilisateur authentifié a-t-il le droit d’effectuer une opération donnée sur un fichier/répertoire/volume ? » Doit s’appuyer sur le gestionnaire de profils de l’ENT Remontées d’erreur : 200 (OK) si l’opération est correctement effectuée 403 (Forbidden) si les droits de l’utilisateur ne sont pas suffisants 500 (Internal server error) en cas d’incident 503 (Service unavailable) en cas d’indisponibilité (du système d’ACL ou du gestionnaire de groupes par exemple) Pistes : S’appuyer sur un système d’ACL et un gestionnaire de groupes Demande au système d’ACL « quels utilisateur ont-ils le droit d’effectuer telle opération sur tel fichier/répertoire/volume ? » Demande au gestionnaire de profils, si nécessaire, « l’utilisateur authentifié appartient-il à un tel ou tel groupe ? » Répond en fonction ACLs profiling service

L’abstraction du système de fichiers protocol (DAV+ACP) WebDAV server filesystem Fonctionnalités attendues : Doit s’intégrer dans le serveur WebDAV Doit pouvoir effectuer sur un système de fichiers physique les opération de base permises par WebDAV (selon RFC 2518). Pistes : Cette couche est essentiellement logique, car les fonctionnalités sont offertes par les systèmes d’exploitation contrôlant les ressources physiques (NFS, CIFS, …). Elle pourrait être de la responsabilité des établissements, avec un support minimal (NFS et CIFS par exemple). physical storage

Le système d’ACLs Fonctionnalités attendues : Pistes : ACLs granting (ACP) ACLs Fonctionnalités attendues : Doit être interrogeable par le module d’autorisation du serveur WebDAV Doit répondre à la question « quels utilisateurs et quels groupes d’utilisateurs ont-ils le droit d’effectuer telle opération sur tel fichier/répertoire/volume ? » Pistes : Si l’on veut des ACL assez riches et permettant le partage entre plusieurs utilisateurs, les droits classiques des systèmes de fichiers existants ne seront certainement pas suffisants. On peut penser à une base de données contenant des entrées du type ALLOW|DENY action FOR USER|GROUP xxx ON file/directory/volume La partie interrogation du système pourrait être mis en redondance

Le gestionnaire de profils granting (ACP) profiling service user database Fonctionnalités attendues : Doit répondre (au module d’autorisation de l’espace de stockage) à des questions : « tel utilisateur appartient-il à tel groupe ? » « tel utilisateur appartient-il à un groupe parmi plusieurs ? » « à quels groupes appartient tel utilisateur ? » S’appuie sur un référentiel utilisateurs (LDAP par exemple) Doit pouvoir être interrogé par les autres briques de l’ENT (fonctionnalités à déterminer) Pistes : Cette brique étant une des briques de base de l’ENT, la réflexion doit être menée au sein du projet ESUP. La partie interrogation du gestionnaire pourrait être mis en redondance Remarque : Le gestionnaire de profils fait l’objet d’une spécification indépendante.

L’application CGI de gestion de l’espace de stockage security (SSL) protocol (CGI) WebDAV server protocol (DAV+ACP) Fonctionnalités attendues : Doit accéder à l’espace de stockage à travers le protocole WebDAV Fonctions traditionnelles de mise à jour de l’espace de stockage de chaque utilisateur Doit implémenter les opérations de base du protocole ACP Partage de fichiers entre utilisateurs, modification des ACLs, … Pistes : Pas beaucoup pour l’instant…

Versions prévues Version 1 : espace de stockage personnel Accès des utilisateurs à leur propre espace de stockage, à travers un canal uPortal Version 2 : diversification des accès Version 2.0 : accès sécurisé par les systèmes d’exploitations, navigateurs et clients WebDAV à l’aide d’une authentification user/password basée sur le référentiel utilisateur (typiquement LDAP) Version 2.1 : accès sécurisé par les navigateurs et les applications à travers une authentification SSO Version 3 : passage à une plate-forme J2EE Version 4 : partage de données Version 4.0 : gestion d’ACLs pour des utilisateurs Version 4.1 : gestion d’ACLs pour des groupes

Version 1 (fonctionnalités) Clients Seule une application CGI particulière (l’application de gestion de l’espace de stockage) est autorisée à accéder à l’espace de stockage C’est une application de confiance, client CAS, partie de l’ENT, qui peut accéder à l’espace de stockage de manière non sécurisée Les accès depuis d’autres applications CGI, les systèmes d’exploitation et les navigateurs ne sont pas autorisés Authentification L’application des gestion de l’espace étant une application de confiance, s’appuyant sur le SSO, elle ne nécessite pas d’authentification En conséquence, le service SSO n’est utilisé que par l’application CGI de gestion de l’espace de stockage, et plus par l’espace de stockage lui-même Autorisation On s’appuie sur un gestionnaire d’ACLs basique Un utilisateur a tous les droits sur son espace personnel Un utilisateur n’a aucun droit sur le reste de l’espace de stockage Les ACLs ne sont pas modifiables En conséquence, le gestionnaire de profils n’est pas nécessaire, de même que le référentiel utilisateurs. Système de fichiers On s’appuie sur un montage d’un système de fichiers physique (par NFS ou CIFS) sur lequel l’espace de travail : A tous les droits A un accès exclusif

Version 1 (choix de mise en œuvre) La création et la destruction de l’espace de stockage est assurée en amont par les établissements. Client d’accès à l’espace de stockage Comme prévu, la version V1 est minimale et permet aux utilisateurs de gérer leur propre espace de stockage, et pas plus. La gestion de l’espace de stockage se fait par une seule application, un canal de uPortal. S’il se révèle impossible de récupérer un canal existant (cf plus loin), il faudra en développer un, ou à défaut une application CGI. Ce canal est une application de confiance vis-à-vis de l’espace de stockage ; il lui transmet une identification (l’uid de l’utilisateur et un mot de passe bidon) par une authentification HTTP basique. L’URL principale d’accès à l’espace de stockage est http://storage.univ.fr/users/uid pour se garder la possibilité d’utiliser d’autres URLs d’accès, par exemple http://storage.univ.fr/projects/project. Serveur de stockage Les parties authentification/autorisation et accès WebDAV sont dissociées comme suit : Un frontal Apache prend en charge l’authentification, le contrôle d’accès et la ré-écriture d’URLs, en utilisant : mod_auth_anon pour l’identification (authentification anonyme, peut-être à modifier un peu pour qu’il accepte n’importe quel mot de passe) ; mod_rewrite ou les .htaccess (gérés en amont par les administrateurs de l’espace de stockage à la création des espaces des utilisateurs) pour le contrôle d’accès ; mod_user_dir ou mod_rewrite pour la transformation d’URLs, c’est-à-dire le mapping sur l’espace physique (/users/uid devient par exemple /users/u/ui/uid). Les accès WebDAV proprement dits sont pris en charge par un serveur Apache couplé à mod_dav. Si les tests avec mod_dav ne s’avèrent pas fonctionnels (sans parler de performances), un autre serveur WebDAV pourra être envisagé, mais aucun obstacle n’est vu dans cette solution, rapide à mettre en œuvre.

Version 1 (travail à réaliser) Client d’accès à l’espace de stockage Prise de contact avec le développeur du canal WebDAV pour demander le droit d'utiliser et d'adapter dans le cadre d'ESUP-Portail Shijia Patch du canal WebDAV pour le faire coller à notre besoin en ne gardant, peut-être, que l'interface utilisateur Pas de personne affectée, dépend du retour obtenu par Shijia S'il ne nous est pas possible d'utiliser le canal WebDAV il nous faudra le développer totalement. Serveur de stockage Test mod_auth_anon pour l'identification Vincent mod_rewrite ou .htaccess pour le contrôle d'accès (l'utilisateur requête bien son espace de stockage et pas celui du voisin) Vincent (Pierre regarde aussi mod_rewrite) mod_user_dir ou mod_rewrite pour la transformation d'URI : passer de /users/uid (répertoire virtuel) à /esup/storage/users/u/ui/uid (répertoire physique)

Version 1 (architecture) digital workspace security (SSL) CGI storage application protocol (CGI) storage component security (SSL) protocol (DAV+ACP) WebDAV server filesystem authentication granting (ACP) SSO trust classical physical storage ACLs NFS, CIFS SSO service profiling service user database

Version 2 Nouvelles fonctionnalités Travail à réaliser Accès sécurisé par les systèmes d’exploitations, navigateurs et clients WebDAV à l’aide d’une authentification user/password basée sur le référentiel utilisateur (typiquement LDAP) Accès sécurisé par les navigateurs et les applications à travers une authentification SSO Travail à réaliser CAS-ifier le serveur WebDAV (client CAS seulement) Sécuriser le serveur WebDAV (SSL)

Version 2 WebDAV server storage component digital workspace security (SSL) CGI storage application protocol (CGI) storage component security (SSL) WebDAV server protocol (DAV+ACP) filesystem authentication granting (ACP) SSO trust classical physical storage ACLs SSO service profiling service user database

Version 3 Nouvelles fonctionnalités Travail à réaliser Aucune Passer à un serveur WebDAV J2EE

Version 3 WebDAV server storage component digital workspace security (SSL) CGI storage application protocol (CGI) storage component security (SSL) WebDAV server protocol (DAV+ACP) filesystem authentication granting (ACP) SSO trust classical physical storage ACLs SSO service profiling service user database

Version 4 de l’espace de stockage Nouvelles fonctionnalités Prise en compte de la notion de partage Travail à réaliser Ajouter le système d’ACLs Connecter module d’autorisations sur le gestionnaire de profils et le système d’ACLs

Version 4 de l’espace de stockage digital workspace security (SSL) CGI storage application protocol (CGI) storage component security (SSL) WebDAV server protocol (DAV+ACP) filesystem authentication granting (ACP) SSO trust classical physical storage ACLs SSO service profiling service user database

Adressage logique de l’espace physique de stockage xxx (projet xxx) esup (projet ESUP-Portail) storage (espace de stockage) trash (espace de récupération des données effacées) share (espace des données partagées) users (espace des utilisateurs) a aa az azrami doc Exemple d’adressage logique de l’espace d’un utilisateur : /esup/storage/share/users/a/az/azrami Accès WebDAV : http[s]://storage.univ.fr/users/azrami, ou http[s]://storage.univ.fr/~azrami

Ce qui pourrait être la feuille de route du groupe 2F Version 1 : espace de stockage personnel Janvier 2004 Version 2 : diversification des accès Février 2004 Version 3 : passage à une plate-forme J2EE Avril 2004 Version 4 : partage de données Juillet 2004