Conception et développement d’une solution de sécurisation de l’échange et du stockage pour...
-
Upload
iheb-ben-salem -
Category
Technology
-
view
209 -
download
0
Transcript of Conception et développement d’une solution de sécurisation de l’échange et du stockage pour...
“Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud
public”
Soutenance de mini-projet
Institut supérieur des études technologiques en communications de Tunis
2015-2016
Réalisé par : Abir BOUROUNIA & Iheb BEN SALEM Encadré par : M. Yacine DJEMAIEL
PLAN
Introduction
Problématique et objectifs
Conception
Réalisation
Conclusion et perspectives
2
INTRODUCTION (1/2)
⇒ Migration vers le Cloud
33
-Coût important
-Problème de sécurité
-Évolution des systèmes d’information
INTRODUCTION (2/2) : “Définition du Cloud”
« Un modèle Informatique qui permet un accès facile et à la demande par le réseau à un ensemble partagé de ressources informatiques configurables (serveurs, stockage, applications et services) qui peuvent être rapidement provisionnées et libérées par un minimum d’efforts de gestion ou d’interaction avec le fournisseur du service. » –NIST-
4
PROBLÉMATIQUE & OBJECTIFS
Optimisation du stockage pour
des données disposant d'une
taille importante
Stockage des données
sur un cloud public
5
Sécurisation des
données stockées
CONCEPTION
6
DIAGRAMME DE CAS D’UTILISATION GÉNÉRAL
Utilisateur simple
Utilisateur
Administrateur
S’authentifier
Stocker les données
Récupérer les données
Gérer les ressources de stockage
Gérer les utilisateurs
<include>
<include>
<include>
<include>
7
DIAGRAMME DE CAS D’UTILISATION : “S’authentifier”
Utilisateur
s’identifier<include>
s'authentifier
8
DIAGRAMME DE CAS D’UTILISATION : “Stocker les données”
Utilisateur simple Stocker les données
sélectionner les données<include>
Fragmenter les données<extend>
9
DIAGRAMME DE SÉQUENCE DU UC : “S’authentifier”
Ali: Utilisateur
IA: Interface authentification Cnx:Connexion A:Authentification IU:Interface User
1 : s’identifier ()2 : Verif login et mot de passe () 3:si login existe
4:si mot de passe existe
5:s’authentifier() 6:Afficher interface user()
7: sinon
Message: Identifiants incorrects
10
DIAGRAMME DE SÉQUENCE DU UC : “Stocker les données”
11
Ali: Utilisateur simple
IS: Interface Stockage D: Data
1 : Parcourir ()
3: Vérifier_taille()
7: Message: Données stockées avec succès
2: SelectData ()
4: [Si taille <=40MO] :Stocker()5:[Si taille >40MO] :Fragmenter()
6: Stocker()
12
emailpassuser-id
Utilisateur
ajouter-user()supprimer-user()créer_ressource()
Administrateur
login
Utilisateur simpleInter-id
créer_compte()
Interface-SignUp
Int-iduser-idonglet_profilonglet_download_upload
afficher_Interface()cacher_Interface()
Interface-Client
modifier_photo()modifier_username()poster_comment()
Interface-profile
Interface-DownloadUpload
id_restaille
Ressource
Int-authemailpass
s’authentier()vérifier()
Authentification
Int-datataille-datatypeetatdate-ajoutextension
download()upload()split()hash()
Data
Int-idonglet_gestioncompteUseronglet_gestionRessources
afficher_Interface()cacher_Interface()
Interface_admin
Int-opdateadr_IPNavigateurid_datauser_id
enregistrer_op()
Historique_operation
s’authentifier1..*
1
1
0..*
gérer_user
gérer_res
1
sélectionner
11si admin accède à 1 1
si user simple accède à
1
1..*
1..*
1..*
consulter
1
11
aller à
1
1
enregistrer
DIAGRAMME DE CLASSES
RÉALISATION
13
ENVIRONNEMENT & OUTILS DE DÉVELOPPEMENT
Linux:Backbox serveur apache Mysql server
bash linux bootstrap Material design lite
14Materilize Jquery+Ajax Sublime
15
SCÉNARIOS D’UTILISATION: “Création d’un compte utilisateur et authentification”
tableau: user_info
tableau: profile_info
id par user_info 1GO Photo par défaut
1
2
16
SCÉNARIOS D’UTILISATION: “Création d’un compte”
SCÉNARIOS D’UTILISATION: “Authentification”
Controller:page login.php
Model:class client
Client<==>class user
1 2
identifier l’utilisateurnom utilisateur
User agent@ip
Session
Trace,logs
3
17
tableau:login_info
Si vérifié redirection vers le profil⇒type d’utilisateur: client;admin
set cookies pour vérifier la tentative de loginlogin>=3 pas de droit de faire le login pendant 10min⇒(non brute forcing) 18
SCÉNARIOS D’UTILISATION: “Authentification(2/2)”
cliquet ici pour faire un “upload”Espace de cloud(pas encore de fichiersdisponibles)
choisir n’importe quel fichier taille<40Mo
19
SCÉNARIOS D’UTILISATION: “Stockage d’un fichier sur le cloud(1/3)”
Détection automatique du type du fichier
partie informative partie opération
tableau:upload_file
Blob
indicateur: pas de split
Assurer l’intégrité du fichier
Enregistrement sans faire le split
20
SCÉNARIOS D’UTILISATION: “Stockage d’un fichier sur le cloud(2/3)”
Taille de fichier > 40Mo
“Split” du fichier en plusieurs fragments ayant chacun comme taille 40 Mo dans controller/splits
21
SCÉNARIOS D’UTILISATION: “Stockage d’un fichier sur le cloud(3/3)”
tableau: upload_file
Blob vide 0 Bsplit fait
1
2
tableau: oc_split
22
SCÉNARIOS D’UTILISATION: “Intégrité des fichiers”
Téléchargement directe à partir du blob
Vérifier le champ splited du tableau upload_file
bash linux
23
SCÉNARIOS D’UTILISATION: “Téléchargement d’un fichier à partir du cloud(1/2)”
(indication sur la présence ou non de fragments)
dossier /cloud/controller/merge
concaténation des fragments =>fichier original
Forcer le téléchargement du fichier sous le“path” choisi par l’utilisateur vider la cache
24
SCÉNARIOS D’UTILISATION: “Téléchargement d’un fichier à partir du cloud(2/2)”
CONCLUSION & PERSPECTIVES
25
Upgrade payantPerformances élevées
Gestion de redondance
➢ Utilisation d’un langage de programmation orienté objet
➢ Outil de stockage des données sur un Cloud
➢ Optimisation du stockage: Fragmentation des données
➢ Sécurisation des données échangées : Confidentialité, intégrité et disponibilité
Migration vers des noeuds performants
Interface pour le mobile
Conclusion
Perspectives
MERCI POUR VOTRE ATTENTION
26