Feature #439

AAI: υποστήριξη χρηστών by invitation

Added by Vangelis Koukis about 11 years ago. Updated almost 11 years ago.

Status:Closed Start date:04/20/2011
Priority:Medium Due date:
Assignee:Giorgos Gousios % Done:

90%

Category:obsolete_AAI Spent time: -
Target version:v0.5.1

Description

Αυτό είναι το γενικότερο ticket που θα παρακολουθεί το feature
"δυνατότητα για πρόσβαση χρηστών by invitation".

Associated revisions

Revision e0dbfa1e
Added by Giorgos Gousios about 11 years ago

Rough email invitation UI, fix invocation parameters for it

refs: #439

Revision 566cd8b2
Added by Giorgos Gousios about 11 years ago

Invitations are saved and displayed

refs: #439

Revision d875d2e4
Added by Giorgos Gousios about 11 years ago

Support '/' at the end of the invitations URL

refs: #439

Revision 7823fd9a
Added by Giorgos Gousios about 11 years ago

Make the dynamicField script project specific

Changes to it to make it support the invitations form made it
non-generic.

Refs: #439

Revision a640b50d
Added by Giorgos Gousios about 11 years ago

Support for identifying and printing invitation form errors

Refs: #439

Revision ee493a51
Added by Giorgos Gousios about 11 years ago

Invitation email template

refs: #439

Revision 914502af
Added by Giorgos Gousios about 11 years ago

Uniform login error handling, welcome and error templates calling

Refs: #439

Revision 9f8ad4c5
Added by Giorgos Gousios almost 11 years ago

Configurable number of invitations per invitation level

Refs: #439

History

#1 Updated by Giorgos Gousios about 11 years ago

  • Target version changed from v0.5 to v0.4

#2 Updated by Giorgos Gousios about 11 years ago

  • % Done changed from 0 to 20

Το σύστημα υλοποιείται ως εξής:

-Κάθε χρήστης μπορεί να στείλει invitations (με όριο). μέσω του web interface σε σελίδα που θα προσαρτηθεί στο profile του. Επίσης, θα μπορεί να δει ποια invitations έγιναν αποδεκτά.
-Προστίθεται το μοντέλο Invitations(from: SynnefoUser, to: SynnefoUser, accepted: Boolean) που κρατάει το ποιος έστειλε invitations σε ποιον, και αν αυτά έγιναν αποδεκτά
-Το σύστημα θα στέλνει invitations μέσω email, και ένα URL που θα περιλαμβάνει το X-Auth-Token encrypted με ένα shared key. Το URL θα το πιάνει κάποιο middleware που θα ενημερώνει το πεδίο accepted και θα θέτει το auth cookie όπως πρέπει στο λογαριασμό του χρήστη. Τα cookies by invitation μπορεί να έχουν διαφορετικό expiration time από τα sibboleth cookies

#3 Updated by Vangelis Koukis about 11 years ago

Ωραίο ακούγεται, ορισμένα ερωτήματα που μπορούμε να συζητήσουμε αύριο:
α) τι σχέση έχει το X-Auth-Token όπως το ξέραμε μέχρι τώρα (authentication σε API calls) με αυτό που αποστέλλεται στο χρήστη; μήπως είναι λογικό να είναι κάτι διαφορετικό (ένα X-Invite-Token, κάτι) το οποίο απλώς αποδεικνύει το authenticity του invitation όταν εμφανίζεται ο χρήστης και λέει "γεια, έχω μια πρόσκληση";
β) νομίζω είναι καλύτερα να προσκαλούνται διευθύνσεις mail, όχι SynnefoUsers. Όπως με το Shibboleth, όταν κάποιος αποδεικνύει ποιος είναι [έρχεται authenticated από εκεί], τότε φτιάχνεται ένας SynnefoUser και το αντίστοιχο X-Auth-Token για αυτόν. Ε, όταν κάποιος έρθει με πρόσκληση, αντίστοιχα θα φτιάχνεται ο SynnefoUser και το αντίστοιχο X-Auth-Token το οποίο θα χρησιμοποιεί εφεξής. Το κομμάτι της δημιουργίας του SynnefoUser και των ατνίστοιχων tokens/cookies είναι κοινό, αλλάζει το πώς επιβεβαιώνω ότι κάποιος έχει δικαίωμα πρόσβασης: αντί να έρθει από το Shibboleth για πρώτη φορά, έρχεται με πρόσκληση.
γ) οπότε από το (β): το μοντέλο Invitation ίσως πρέπει να έχει from: έναν SynnefoUser, To: μία διεύθυνση mail, και το όνομα του χρήστη να είναι είτε μέρος του Invitation (να το δίνει εκ των προτέρων αυτός που τον προσκαλεί) είτε να το ζητάει το σύστημα από τον ίδιο το χρήστη την πρώτη φορά που εμφανίζει μια έγκυρη πρόσκληση, οπότε δίνει τα στοιχεία του, φτιάχνεται ο SynnefoUser του και διαγράφεται το instance του μοντέλου Invitation, ή τέλος πάντων μαρκάρεται ως χρησιμοποιημένο.

#4 Updated by Giorgos Gousios about 11 years ago

  • % Done changed from 20 to 80

Η βασική υλοποίηση, όπως περιγράφηκε παραπάνω, έχει τελειώσει. Απομένουν styling και καλύτερες δοκιμές.

#5 Updated by Giorgos Gousios almost 11 years ago

  • % Done changed from 80 to 90

Δοκικές και bugfixing έγινε, απομένει το styling

#6 Updated by Vangelis Koukis almost 11 years ago

  • Target version changed from v0.4 to v0.5

Αυτό είναι ΟΚ, δουλεύει, μεταφέρεται στη v0.5 για να ολοκληρωθεί η αλλαγή στην εμφάνισή του.

#7 Updated by Vangelis Koukis almost 11 years ago

  • Assignee changed from Giorgos Gousios to Kostas Papadimitriou

Όλα είναι έτοιμα, εκτός από theming της σελίδας. Πηγαίνει για τον κύκλο bugfixes > v0.5.

#8 Updated by Vangelis Koukis almost 11 years ago

  • Target version changed from v0.5 to v0.5.1

#9 Updated by Vangelis Koukis almost 11 years ago

  • Assignee changed from Kostas Papadimitriou to Giorgos Gousios

Μετά από την τελευταία συνάντησή μας με nkoziris, χρειάζεται να επεκταθεί ο μηχανισμός.
Για κάθε χρήστη που βρίσκεται στη βάση τηρείται το επίπεδό του: οι πρώτοι-πρώτοι χρήστες έχουν level=0, κάθε προσκεκλημένος μπαίνει με level ένα μεγαλύτερο από αυτό του χρήστη που τον προσκαλεί.

Με τον τρόπο αυτό μπορεί να υλοποιηθεί πολιτική μοιράσματος προσκλήσεων σε διαφορετικά επίπεδα για ελεγχόμενο άνοιγμα της υπηρεσίας σε testers.

#11 Updated by Kostas Papadimitriou almost 11 years ago

ui integration 19e0194

#12 Updated by Constantinos Venetsanopoulos almost 11 years ago

  • Status changed from Assigned to Closed

To ui integration έχει ολοκληρωθεί.

Also available in: Atom PDF