Conception et développement d’une solution de sécurisation de l’échange et du stockage pour...

26
“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

Transcript of Conception et développement d’une solution de sécurisation de l’échange et du stockage pour...

Page 1: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

“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

Page 2: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

PLAN

Introduction

Problématique et objectifs

Conception

Réalisation

Conclusion et perspectives

2

Page 3: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

INTRODUCTION (1/2)

⇒ Migration vers le Cloud

33

-Coût important

-Problème de sécurité

-Évolution des systèmes d’information

Page 4: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 5: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 6: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

CONCEPTION

6

Page 7: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 8: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

DIAGRAMME DE CAS D’UTILISATION : “S’authentifier”

Utilisateur

s’identifier<include>

s'authentifier

8

Page 9: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 10: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 11: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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()

Page 12: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 13: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

RÉALISATION

13

Page 14: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

ENVIRONNEMENT & OUTILS DE DÉVELOPPEMENT

Linux:Backbox serveur apache Mysql server

bash linux bootstrap Material design lite

14Materilize Jquery+Ajax Sublime

Page 15: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

15

SCÉNARIOS D’UTILISATION: “Création d’un compte utilisateur et authentification”

Page 16: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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”

Page 17: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 18: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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)”

Page 19: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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)”

Page 20: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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)”

Page 21: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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)”

Page 22: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

tableau: upload_file

Blob vide 0 Bsplit fait

1

2

tableau: oc_split

22

SCÉNARIOS D’UTILISATION: “Intégrité des fichiers”

Page 23: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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)

Page 24: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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)”

Page 25: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

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

Page 26: Conception et développement d’une solution de sécurisation de l’échange et du stockage pour un cloud public

MERCI POUR VOTRE ATTENTION

26