Skip to content
This repository has been archived by the owner on Apr 25, 2023. It is now read-only.

rbeier/securecloud

Repository files navigation

SecureCloud | Code Competition 03/2017 IT-Talents

Dieses Projekt ist das Ergebnis der Code Competition 03/2017 von it-talents.

Das Projekt setzt auf das umfangreiche PHP-Framework Laravel auf.
Im Frontend kommt das JavaScript-Framework Vue.js im Zusammenspiel mit Vue Material, sowie ein wenig jQuery zum Einsatz.


Systemanforderungen

  • PHP >= 7.0
  • MySQL >= 5.6

Installation

  • Vagrant, Virtualbox, Laravel Homestead installieren
  • Homestead.yaml anpassen
  • VM hochfahren mit vagrant up
  • Per ssh verbinden mit vagrant ssh
  • In der VM (im Projekt-Root) folgende Befehle ausführen:
composer install  
php artisan migrate  

Benutzung

  • Um einen Account anzulegen kann die Route /register besucht werden

  • Es muss ein Bild aufgenommen, ein Username, sowie ein Passwort eingegeben werden um die Registrierung abzuschließen

  • Anschließend wird man automatisch eingeloggt und kann die SecureCloud nutzen.

  • Diese besitzt einige Grundfunktion wie das Hochladen, Teilen und Löschen von Dateien.

  • Um sich später wieder einzuloggen, wird man automatisch auf die Seite /login weitergeleitet, wenn die Session auf dem Server abgelaufen ist

  • Nach Eingabe seinen Usernames und Aufnehmen des Bildes wird die Microsoft FaceApi angesprochen um zu vergleichen ob die Person sich authentifizieren darf

  • Bei mehr als 75% Übereinstimmung wird man sofort eingeloggt

  • Bei Übereinstimmung zwischen 50% und 75% wird zusätzlich das Passwort abgefragt um sicherzustellen, dass es sich um den richtigen Nutzer handelt

  • Bei Übereinstimmung von unter 50% wird der Login-Vorgang abgebrochen


Geplante Features

Da die Zeit sehr knapp war, konnte ich einige Features nicht umsetzen:

  • Download von mehreren Dateien gleichzeitig im Userbereich (als .zip File)
  • Dateivorschau im Userbereich
  • Anlegen von .md oder .txt Dateien direkt im Browser
  • Diverse Usability-Verbesserungen im Authentifizierungs-Prozess
  • Besseres Responsive-Design der gesamten Seite