1 / 12

Διαδικτυακή Εφαρμογή για Διαχείριση Συνεδρίων

Διαδικτυακή Εφαρμογή για Διαχείριση Συνεδρίων. Χαντζής Δημήτριος Επιβλέπων Καθηγητής: Σιδηρόπουλος Αντώνιος. Περιγραφή Συστήματος. Σύστημα Διαχείρισης Συνεδρίων με όνομα: PaperReview . Στόχοι συστήματος: συλλογή αξιολόγηση επιλογή επιστημονικών διατριβών για δημοσίευση σε συνέδρια.

jock
Download Presentation

Διαδικτυακή Εφαρμογή για Διαχείριση Συνεδρίων

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Διαδικτυακή Εφαρμογή για Διαχείριση Συνεδρίων Χαντζής Δημήτριος Επιβλέπων Καθηγητής: Σιδηρόπουλος Αντώνιος

  2. ΠεριγραφήΣυστήματος • Σύστημα Διαχείρισης Συνεδρίων με όνομα: PaperReview. • Στόχοι συστήματος: • συλλογή • αξιολόγηση • επιλογή επιστημονικών διατριβών για δημοσίευση σε συνέδρια. • Υποστηρίζεται η διεξαγωγή πολλών συνεδρίων ταυτόχρονα.

  3. Χρήστες Συστήματος • Τρεις ρόλοι χρηστών: • Chairman • Reviewer • Author και ο system administrator. • Κάθε ρόλος έχει διαφορετικά προνόμια στο συνέδριο. • Οι χρήστες είναι δυνατόν να έχουν και τους τρεις ρόλους στο ίδιο συνέδριο.

  4. Χρήστες Συστήματος(συνέχεια) • Chairman: επίβλεψη συνεδρίου και διαχείριση λειτουργών του. • Reviewer : αξιολόγηση και βαθμολόγηση διατριβών που του έχουν ανατεθεί. • Author: υποβολή διατριβών σε συνέδριο. Ως προς τα προνόμια στο σύστημα, ταυτίζεται με τον common user. • System Administrator: δημιουργία συνεδρίων, ανάθεση chairmen σε συνέδρια, γενική επίβλεψη συστήματος.

  5. Χρονοδιάγραμμα Λειτουργιών Συστήματος

  6. Τεχνολογίες Ανάπτυξης XHTML: • Χρησιμοποιείται για σήμανση διαφορετικών περιεχομένων στις ιστοσελίδες. • Δεν περιλαμβάνονται οδηγίες για παρουσιαστικό ιστοσελίων. CSS: • Περιλαμβάνει όλες τις οδηγίες για παρουσιαστικό ιστοσελίδων. JavaScript: • Χρησιμοποιείται για ειδικές λειτουργίες πάνω στον κώδικα XHTML: π.χ. toggling content visibility, εισαγωγή πολλαπλών authors σε διατριβή, user menus.

  7. Τεχνολογίες Ανάπτυξης (συνέχεια) AJAX: • Χρησιμοποιείται για τα sliders στη γραφική διεπιφάνεια της αξιολόγησης διατριβών. MySQL: • Διατηρεί τη database του συστήματος. PHP: Μέθοδοι για: • ασφάλεια συστήματος και διαχείριση προνομίων χρηστών • επικοινωνία με database. • παρουσίαση αποτελεσμάτων λειτουργιών σε XHTML.

  8. Βάση Δεδομένων PRDB • Αποτελείται από 14 πίνακες. • 2 χρήστες στη PRDB: • prdbadm: Για την επικοινωνία του system administrator με τη database. • prdbuser:Για την επικοινωνία των υπόλοιπων χρηστών. • Ο prdbuser έχει περιορισμένα προνόμια στους πίνακες της PRDB. π.χ. Για πίνακα usersactionlog, μόνο INSERT και όχι SELECT.

  9. Παρουσίαση Συστήματος • 59 αρχεία για τη γραφική διεπιφάνεια συστήματος • Σχεδιάστηκε σύμφωνα με τις 10 ευρετικές (heuristics) για την ενίσχυση της ευχρηστίας του Jakob Nielsen (2005). • Παράδειγμα ευρετικών: • Ορατότητα της κατάστασης του συστήματος. • Καλαίσθητος και μινιμαλιστικός σχεδιασμός. • Αποτροπή σφαλμάτων. • Βοήθεια στους χρήστες για αναγνώριση, διάγνωση και ανάκτηση από τα λάθη.

  10. Ασφάλεια Συστήματος • Η υλοποίηση του συστήματος έγινε: • με την εφαρμογή των προτάσεων του OWASP TOP 10. • με τη συγγραφή μεθόδων σύμφωνα με τις ιδιαιτερότητες των λειτουργιών της. • Ασφάλεια στο σύστημα με: • Αναγκαστική υποστήριξη JavaScript και Session Cookies από browsers. • Χρήση μεταβλητών session για αποθήκευση προνομίων χρηστών. • Απουσία αναφοράς των session id και χρήση της μεθόδου session_regenerate_id()για αποφυγή επιθέσεων session fixation. • Χρήση μεθόδου whereUgo() για ταυτοποίηση προνομίων χρηστών.

  11. Ασφάλεια Συστήματος (συνέχεια) • Κωδικοποίηση UTF-8 για τη βάση δεδομένων και τις ιστοσελίδες. • Χρήση κωδικοποίησης SHA-256για ευαίσθητα δεδομένα. • Έλεγχος και έγκριση δεδομένων πριν αποθηκευτούν στη DB: • με μεθόδους addslashes(), htmlentities(), trim(). • με custom μεθόδους variablesSet(), variablesFilled(), variablesCheckRange(), variablesValidate(). • Αυστηροί έλεγχοι στις περιπτώσεις χρήσης μεταβλητών GET. • Έλεγχοι ότι συγκεκριμένες λειτουργίες επιτρέπονται από το control panel του συνεδρίου (μέσω του loadconfoptionsinc.php).

  12. Ασφάλεια Συστήματος (συνέχεια) • Ασφάλεια μεθόδων διαχείρισης δεδομένων φορμών με: • ελέγχους ότι η ενέργεια επιτρέπεται στο συνέδριο. • ελέγχους προνομίων χρήστη. • ελέγχους ότι η φόρμα υποβλήθηκε με τη μέθοδο POST. • ελέγχους ότι το κρυφό πεδίο "csrf" που υποβάλλεται από τις φόρμες υπάρχει και έχει συγκεκριμένη μοναδική τιμή. • Ασφάλεια Βάσης Δεδομένων με: • περιορισμένα προνόμια χρήσης στους πίνακες της DB. • χρήση του silencer @ σε μεθόδους όπως @mysql_connect(). • μέθοδοι dbErrorHandler() και save_to_usersactionlog(). • Αρχείο sessioninitinc.php.

More Related