API

για την αλληλεπίδραση ηλεκτρονικών

υπηρεσιών του τμήματος πληροφορικής του

ΑΤΕΙΘ

 

Αλέξανδρος Παυλίδης

 

Επιβλέπων:

Πασχάλης Ράπτης

Καθηγητή

 

 

IT_API

  • Ειναι ανοιχτού λογισμικού
  • Εφαρμογές τρίτων μπορούν να χρησιμοποιήσουν το API
  • API που παρέχει ηλεκτρονικές υπηρεσίες στο τμήμα πληροφορικής του ΑΤΕΙΘ.
  • Βασίζεται στην αρχιτεκτονική REST

Στόχος

  • Αναδόμηση των legacy συστημάτων
  • Βελτίωση ευχριστίας και ποιότητας υπηρεσιών
  • Ενοποίηση υπηρεσιών

Τεχνολογίες

  • Nodejs
  • MongoDB
  • Git
  • Jenkins
  • REST architecture style
  • LDAP

Υπηρεσίες

  • Ανακοινώσεις (Bulleting Board)
  • Υπηρεσία καταλόγου (Directory Service)
  • Προφιλ
  • Υπηρεσίες διαχείρισης
  • Ειδοποιήσεις

Ανακοινώσεις

  • Εμφάνιση & επεξεργασία ανακοινώσεων
  • Διαχείριση κατηγοριών
  • Διαχείριση αρχείων
  • Εξαγωγή σε RSS

Διαχείριση αποτολεσμάτων

  • Επιλογή πεδίων (selecting)
  • Ταξινόμηση (sorting)
  • Σελιδοποίηση (pagination)
  • Φίλτρο (filtering)

Ασφαλεια

  • Https
  • Αυθεντικοποίηση μέσω Login
  • Ταυτοποίηση μέσω JWT token
  • Ασφάλεια http ερωτημάτων (Joi,query sanitation)
  • Καταγραφή κίνησης
  • Role based access control

Χρήση του IT_API

  • Http Client
  • Οδηγίες χρήσης (endpoints, status codes κλπ)
  • API Token
  • Αίτημα εξουσιοδότησης

JWT Token

  • Το token περιέχει το id και το scope του χρήστη
  • Καθε οντοτητα απαιτεί διαφορετικο scope

 

  • Αίτημα εξουσιοδότησης

Χρήση του IT_API

Ανοικτό Λογισμικό

  • Github

  • Slack

  • Linux Image (.ova)

  • Github flow

Title Text

Συνεισφορά στο IT_API

Επεκτάσεις & Βελτιώσεις

  • Ανάλυση και βελτιστοποίηση λογισμικού

  • Συγγραφή κώδικα ελέγχου (tests)

  • Υλοποίση ιστοσελίδας του Apps

  • Υλοποίση εφαρμογής Android

Ευχαριστώ

 

Ερωτήσεις;

IT_API

By Alexis Pavlidis

IT_API

The Internet services of the IT department of Alexander Technological Education Institute of Thessaloniki http://api.it.teithe.gr/

  • 488