Μ ε τ ε γ γ ρ α φέ ς Φ ο ι τ η τ ώ ν 2 0 1 5-2 0 1 6 Ο Δ Η Γ Ο Σ Δ Ι Α Σ Υ Ν Δ Ε Σ Η Σ Τ Ω Ν Ι Δ Ρ Υ Μ Α Τ Ι Κ Ω Ν Π Α Ρ Ο Χ Ω Ν Τ Α Υ Τ Ο Τ Η Τ Α Σ GUN E T I D E N T I T Y M A N A G E M E N T Ημερομηνία: 05/10/2015 Έκδοση: 1-1 GUnet Identity 1 / 9
Σύνοψη: Το παρόν αφορά στη διασύνδεση. σε πραγματικό χρόνο των Πληροφοριακών Συστημάτων Ηλεκτρονικής Γραμματείας Φοιτητών με την ηλεκτρονική εφαρμογή Μετεγγραφής Φοιτητών του Ακαδημαϊκού έτους 2015-2016 μέσω των ιδρυματικών υποδομών Παρόχων Ταυτότητας (Identity Providers). Αναλύεται ένα υπόδειγμα λύσης που βασίζεται στην απευθείας διασύνδεση των Federated SSO με τα συστήματα Ηλεκτρονικής Γραμματείας Φοιτητών. GUnet Identity 2 / 9
Εκδόσεις Κειμένου Έκδοση Ημ/νια Σχόλιο 1-0 02/10/2015 Αρχική έκδοση 1-1 05/10/2015 SP entityid, διευκρινήσεις για το inscriptionnumber Λίστα Αλλαγών Έκδοση Παράγραφος Σχόλιο 1-1 2.1 Προσδιορισμός entityid 3 Προσθήκη. Διευκρινήσεις για το πεδίο τιμών του inscriptionnumber. Σύνδεσμοι Αρχείου Τύπος Αρχείου Σύνδεσμος PDF http://identity.gunet.gr/ GUnet Identity 3 / 9
ΠΕΡΙΕΧΟΜΕΝΑ 1. ΕΙΣΑΓΩΓΗ... 5 2. ΠΛΗΡΟΦΟΡΙΕΣ ΦΟΙΤΗΤΗ... 5 2.1. ΜΗΧΑΝΙΣΜΟΣ ΔΙΑΣΥΝΔΕΣΗΣ... 5 2.2. DB VIEW ΜΕΤΕΓΓΡΑΦΩΝ... 6 3. ΚΩΔΙΚΟΣ ΥΠΟΨΗΦΙΟΥ... 8 4. ΠΑΡΑΤΗΡΗΣΕΙΣ... 8 ΠΙΝΑΚΑΣ ΠΙΝΑΚΩΝ Πίνακας 1 Πεδία του SIS DB View Μετεγγραφών 2015-2016... 8 ΠΙΝΑΚΑΣ ΣΧΗΜΑΤΩΝ NO TABLE OF FIGURES ENTRIES FOUND. GUnet Identity 4 / 9
1. ΕΙΣΑΓΩΓΗ Το παρόν κείμενο αφορά στη διασύνδεση της ηλεκτρονικής εφαρμογής αιτήσεων για τις Μετεγγραφές Φοιτητών που υλοποιεί το ΥΠ.Π.Ε.Θ. με τις υποδομές Παρόχων Ταυτότητας των ιδρυμάτων μέσω της Ομοσπονδιακής Υποδομής Ταυτοποίησης και Εξουσιοδότησης της ΕΔΕΤ. Σημειώνεται ότι το παρόν αποτελεί ένα οδηγό υλοποίησης τον οποίο τα ιδρύματα μπορούν να προσαρμόσουν όπως κρίνουν καλύτερα. Σε κάθε περίπτωση θα πρέπει να διατηρηθούν τα χαρακτηριστικά των πεδίων που πρέπει να απελευθερώνονται προς την εφαρμογή του ΥΠ.Π.Ε.Θ. τόσο ως προς το περιεχόμενο των τιμών όσο και ως προς το μοναδικό χαρακτηρισμό τους (OIDs) 2. ΠΛΗΡΟΦΟΡΙΕΣ ΦΟΙΤΗΤΗ Υποβολή αιτήσεων στο ακαδημαϊκό έτος 2015-2016 θα γίνει με βάση τον προσωπικό ηλεκτρονικό λογαριασμό που διατηρούν στο οικείο ίδρυμα και με τον οποίο έχουν ήδη πρόσβαση σε άλλες ομοσπονδιακές εφαρμογές όπως ο Εύδοξος. Τα στοιχεία που ζητούνται για το φοιτητή είναι τα εξής: Το όνομα και το επώνυμο φοιτητή με ελληνικούς χαρακτήρες Το έτος γέννησης του φοιτητή Ο κωδικός του τμήματος φοίτησης, σύμφωνα με την κωδικοποίηση που χρησιμοποιείται από το μηχανογραφικό δελτίο των Πανελλαδικών Εξετάσεων Ο αριθμός μητρώου του φοιτητή όπως αυτό ορίζεται μοναδικά στο εύρος του ιδρύματος Το ακαδημαϊκό έτος και εξάμηνο εγγραφής καθώς και το τρέχον εξάμηνο φοίτησης Ο 8-ψήφιος κωδικός υποψηφίου, εφόσον αυτός είναι διαθέσιμος από το ηλεκτρονικό μητρώο φοιτητών του ιδρύματος. 2.1. ΜΗΧΑΝΙΣΜΟΣ ΔΙΑΣΥΝΔΕΣΗΣ Για τα ιδρύματα που δεν έχουν συμμετάσχει στην υλοποίηση των υποδομών Identity Management της GUnet, η προτεινόμενη μέθοδος διασύνδεσης είναι η απευθείας σύνδεση του ιδρυματικού Identity Provider (IdP) με ένα κατάλληλα διαμορφωμένο database view το οποίο θα περιλαμβάνει όλη τα απαιτούμενα στοιχεία των φοιτητών. Το DB View θα καταναλώνεται από τον IdP, οποίος στη συνέχεια θα επεξεργάζεται και θα απελευθερώνει τα απαιτούμενα στοιχεία μέσω προκαθορισμένων πεδίων με συγκεκριμένα ObjectIdentifiers (OIDs) που αναφέρονται σε συγκεκριμένα LDAP/SAML σχήματα, τα οποία θα αναγνωρίζει και η ηλεκτρονική εφαρμογή. GUnet Identity 5 / 9
Υπόδειγμα υλοποίησης της παραπάνω αρχιτεκτονικής, έχει αναπτυχθεί σε λογισμικό Shibboleth Identity Provider έκδοσης 2.x και αποτελείται από τρεις βασικές κατηγορίες ρυθμίσεων: 1. Ρυθμίσεις που αφορούν τον ορισμό του connector του IdP με το DB View του φοιτητολογίου Αυτό το τμήμα ρυθμίσεων (βλ αρχείο attribute-resolver-connector-transfer2015.xml) πρέπει να ενταχθεί στο αρχείο attribute-resolver.xml. 2. Ρυθμίσεις που αφορούν τον ορισμό των attributes που αναγνωρίζει ο IdP. Αυτό το τμήμα ρυθμίσεων (βλ. αρχείο attribute-resolver-definitions-transfer2015.xml) πρέπει να ενταχθεί στο αρχείο attribute-resolver.xml. 3. Ρυθμίσεις που αφορούν τα attributes που απελευθερώνει ο IdP στη συγκεκριμένη εφαρμογή (Service Provider). Αυτό το αρχείο ρυθμίσεων (βλ αρχείο attribute-filter-transfer2015.xml) πρέπει να ενταχθεί στο αρχείο attribute-filter.xml Το entityid της εφαρμογής θα είναι το https://transfer.it.minedu.gov.gr/shibboleth. Αυτή είναι και η τιμή που πρέπει να χρησιμοποιηθεί στο αρχείο attribute-filter.xml. Οι ρυθμίσεις του υποδείγματος είναι οργανωμένες σε τρία αρχεία που είναι διαθέσιμα στο δικτυακό τόπο http://identity.gunet.gr 2.2. DB VIEW ΜΕΤΕΓΓΡΑΦΩΝ Το DB View στο οποίο βασίζεται το υπόδειγμα της λύσης αποτελεί τμήμα του GUnet IDM SIS DB View, η νεότερη έκδοση του οποίου είναι διαθέσιμη στο δικτυακό τόπο http://identity.gunet.gr. Στο κείμενο πλήρους ανάλυσης του GUnet IDM SIS DB View περιλαμβάνεται τόσο η σημασιολογική ερμηνεία των πεδίων όσο και τα πεδία τιμών αυτών. Τα συγκεκριμένα πεδία που αξιοποιούνται για το υπόδειγμα λύσης είναι τα εξής: Κατηγορία Όνομα Πεδίου Υποχρεωτικό Παρατηρήσεις Κλειδιά Πληροφοριακών Συστημάτων Τμήμα/Πρόγραμμα Φοίτησης registrationid Υ Ο μοναδικός στο ίδρυμα αριθμός μητρώου φοιτητή (πρέπει να έχει τα χαρακτηριστικά unique identifier) departmentid Υ Ο κωδικός του τμήματος φοίτησης, σύμφωνα με την κωδικοποίηση που χρησιμοποιείται από το GUnet Identity 6 / 9
μηχανογραφικό δελτίο των Πανελλαδικών Εξετάσεων Προσωπικά Στοιχεία firstnameel Υ Όνομα με ελληνικούς χαρακτήρες lastnameel Υ Επώνυμο με ελληνικούς χαρακτήρες birthyear Υ Έτος γέννησης σε μορφή ΥΥΥΥ Φοίτηση enrollmenttype Υ Λεξικό Όρων. Ενδιαφέρει μόνο η τιμή «Undergraduate» enrollmentterm Y Τρέχον εξάμηνο φοίτησης attendancetype Ν Λεξικό Όρων. Μπορεί να παραμείνει κενό. Αναφέρεται μόνο γιατί χρησιμοποιείται στη δόμηση των στοιχείων. enrollmentstatus Υ Λεξικό Όρων. Χρησιμοποιούνται οι τιμές «active» και «interim» inscriptionacyear Υ Ακαδημαϊκό έτος εγγραφής. Το ακαδημαϊκό έτος 2013-2014 σημειώνεται με την τιμή του έτους έναρξης δηλαδή με τη τιμή 2013. inscriptionterm Υ Εξάμηνο εγγραφής του φοιτητή. inscriptionmethodid Ν Αφορά στη μέθοδο εισαγωγής. Μπορεί να παραμείνει κενό. Αναφέρεται μόνο γιατί χρησιμοποιείται στη δόμηση των στοιχείων. inscriptionnumber Υ Ο 8-ψήφιος κωδικός υποψηφίου, εφόσον αυτός είναι διαθέσιμος από το ηλεκτρονικό μητρώο φοιτητών του ιδρύματος. Θα πρέπει στο DB View ή GUnet Identity 7 / 9
εναλλακτικά στον IdP να υπάρχει συνθήκη ελέγχου που να εξασφαλίζει ότι θα επιστρέφονται μόνο τιμές 8-ψηφίων. Λοιπά Στοιχεία loginname Υ Απαραίτητο για τη σύνδεση των εγγραφών του DB View με το λογαριασμό χρήστη και το χαρακτηριστικό που χρησιμοποιείται ως principal name. Πίνακας 1 Πεδία του SIS DB View Μετεγγραφών 2015-2016 3. ΚΩΔΙΚΟΣ ΥΠΟΨΗΦΙΟΥ Τουλάχιστον όσον αφορά στα στοιχεία εισαγωγής στην Γ βάθμια για τα έτη μετά το 2000 τα δύο πρώτα ψηφία από τον 8-ψήφιο κωδικό υποψηφίου Πανελλαδικών Εξετάσεων, προκύπτουν από τα δύο τελευταία ψηφία του έτους. Αυτό σημαίνει ότι ο κωδικός για ένα υποψήφιο φοιτητή με έτος εγγραφής το 2000 θα είναι της μορφής 00xxxxxx ενώ για ένα φοιτητή με έτος εγγραφής το 2009 θα είναι 09xxxxxx. Στην περίπτωση που ένας φοιτητής έχει συμμετάσχει στις Πανελλαδικές Εξετάσεις για 2η φορά τότε διατηρεί το 8-ψήφιο κωδικό με τον οποίο είχε καταχωρηθεί κατά την πρώτη συμμετοχή του. Αυτό σημαίνει ότι η εγγραφή ενός φοιτητή που έχει εγγραφεί σε ένα τμήμα κατά το έτος 2013 ενδέχεται να έχει 8-ψήφιο κωδικό της μορφής 08xxxxxx αν ο φοιτητής αυτός είχε συμμετάσχει στις Πανελλαδικές Εξετάσεις πρώτη φορά το 2008. Ενδέχεται το ΠΣ Ηλεκτρονικής Γραμματείας Φοιτητών κατά τη μαζική ενημέρωση του πεδίου αυτού να έχει περικόψει τα αρχικά πρώτα μηδενικά ψηφία με αποτέλεσμα να υπάρχουν εγγραφές που να είναι π.χ. 7-ψήφιες. Αν συντρέχουν τέτοιες συνθήκες θα πρέπει στο επίπεδο του DB View να επιστρέφεται η ορθή τιμή με τα αρχικά μηδενικά ψηφία (left padding). Οι περιπτώσεις εγγραφών με λιγότερα π.χ. 5 ψηφία ή περισσότερα π.χ. 10 ψηφία θα αγνοούνται και για το λόγο αυτό μπορούν να επιστρέφονται με την τιμή NULL. 4. ΠΑΡΑΤΗΡΗΣΕΙΣ Το υπόδειγμα λύσης είναι κατασκευασμένο ώστε να είναι αυτοτελές. Αυτό σημαίνει ότι τα attribute filtering, τα attribute definitions και τα columns του DB View περιλαμβάνουν το σύνολο των στοιχείων που απαιτούνται για τη διαλειτουργικότητα με την εφαρμογή Μετεγγραφών, έστω και αν κάποια από τα πεδία αυτά είναι ήδη διαθέσιμα μέσω της υπηρεσίας καταλόγου χρηστών (LDAP). Αυτό έχει γίνει για λόγους πληρότητας αλλά και για να εξασφαλισθεί η εγκυρότητα των τιμών GUnet Identity 8 / 9
ανεξάρτητα του μηχανισμού συγχρονισμού μεταξύ του μητρώου χρηστών στον ιδρυματικό LDAP και στο μητρώο φοιτητών στο Φοιτητολόγιο. Στα πεδία αυτά πιθανά να περιλαμβάνονται τα εξής: givenname (attributeid="lastnameel") sn (attributeid="firstnameel") schacpersonaluniquecode (attributeid="schacpersonaluniquecodesis") gredupersonundergraduatebranch (attributeid="gredupersonundergraduatebranchsis") Για όλα τα παραπάνω πεδία, το OID που χρησιμοποιείται είναι αυτό με το οποίο προσδιορίζονται από τα επίσημα σχήματα ανεξάρτητα από το αν η «κατασκευή» του πεδίου στον IdP γίνεται με συστατικά στοιχεία από τον LDAP ή το DB View. Επιπλέον των παραπάνω πεδίων η λύση του υποδείγματος, περιλαμβάνει τα παρακάτω ειδικά πεδία: schgracenrollment: Αποτυπώνει το εξάμηνο φοίτησης, το είδος φοίτησης και το τμήμα στο οποίο είναι ο φοιτητής schgracinscription: Αποτυπώνει το εξάμηνο εγγραφής, το ακαδημαϊκό έτος εγγραφής, το τμήμα στο οποίο είναι ο φοιτητής και την μέθοδο εισαγωγής Τα πεδία schgracenrollment, και schgracinscription είναι παραγόμενα πεδία τύπου URN, τα οποία έχουν αναπτυχθεί στο πλαίσιο ανάπτυξης των υποδομών Identity Management από το GUnet, για τα Παν/μια και ΤΕΙ της χώρας. Τέλος το πεδίο inscriptionnumber, λόγο του ειδικού χαρακτήρα του, δεν περιλαμβάνεται ούτε στο GUnet IDM SIS DB View και δεν υπάρχει σε επίσημα αναρτημένο LDAP/SMAL σχήμα. Για το λόγο αυτό στο επίπεδο του Federeated IdP επιλέχτηκε να χρησιμοποιηθεί καταχρηστικά το πεδίο serialnumber (OID 2.5.4.5). GUnet Identity 9 / 9