Feature #7165
closed
FE User Registration: Konzept fuer Implementierung via QFQ
Added by Carsten Rose over 5 years ago.
Updated about 5 years ago.
Description
Fuer forkred benoetigen wir eine FE User Self-Registration
Die Extension 'fe_change_pwd' ist ein gutes proof of concept
Veraltete Ueberlegungen:
Folgende T3 Register Extensions scheinen einigermassen aktuell sein.
- Subject changed from FE User Registration to FE User Registration: Konzept fuer Implementierung via QFQ
- Assignee set to Carsten Rose
- Target version set to 18.12.1
- Nur die sr_feuser_register ist fuer 9 bereit.
- In #7164 wurde das testweise installiert.
Konzept: Register feUser via QFQ¶
QFQ Erweiterung:
- Es gibt eine neue 'escape class' "p" (=password), die erzeugt aus dem Value ein T3 FE Password hash.
Passwort anpassen:
- Report: sql = UPDATE fe_user SET password={{myPassword:R:p}} WHERE user_name={{feUser:T}}
- Form: fe.name='myPassword', fe.sqlAfter={{dbIndexT3|UPDATE fe_user SET password={{myPassword:F:p}} WHERE user_name={{feUser:T}} }}
Neuen FE User anlegen:
- Wie Passwort anpassen, nur INSERT anstelle von UPDATE.
Workflow 1: Self Registration email¶
- QFQ Form 'register':
- Fragt nach Email
- Check das die Email nicht schon vergeben ist.
- Check das keine UZH Mail (=UZH Account) angegeben wird.
- Check das keine Mailinator Domain verwendet wird.
- Erzeugt einen tmp_User Record mit uniq hash.
- Sendet Confirmation URl an Email
- User klickt auf den Link in der URL
- Es oeffnet sich ein 'resetPassword' Form.
- Das Form erzeugt den User (inkl. setzen der FE Group).
- FE User wird weitergleitet auf die Login Seite und kann sich einloggen.
- Fake User werden einmal pro Woche geloescht.
- Der Confirmation Hash ist nur einmal und maximal x-Tage gueltig.
Workflow 2: Reset Password¶
- Bei der Login Box gibt es einen Link auf ein Form 'requestPasswordReset'.
- User gibt auf dem Form seine Email an. Existiert die Email, wird ein Reset token an die Email gesendet.
- Existiert die Email nicht, gibt es eine Fake Meldung das eine Mail versendet wurde.
- Mit dem Token kann der User das 'setPassword' Form aufrufen.
- Das urspruengliche Passwort bleibt solange gueltig bis ein neues gesetzt wird.
Workflow 2: Set Password¶
Eine Seite mit einem Form:
- User hat in seinen persoenlichen Settings ein 'Set Password' Link.
- Das alte und zweimal das neue Passwort werden abgefragt.
- Der Hash des alten wird mit der T3 DB verglichen, nur wenn das ok ist wird das neue gesetzt.
- Due date set to 10.11.2018
- Due date changed from 10.11.2018 to 16.11.2018
- Start date changed from 04.11.2018 to 13.11.2018
- Due date changed from 16.11.2018 to 25.11.2018
- Due date changed from 25.11.2018 to 07.12.2018
- Target version changed from 18.12.1 to 141
- Priority changed from Normal to High
- Target version changed from 141 to 146
- Due date changed from 07.12.2018 to 23.01.2019
- Due date changed from 23.01.2019 to 06.02.2019
- Assignee changed from Carsten Rose to Marc Egger
- Description updated (diff)
- Assignee changed from Marc Egger to Carsten Rose
- Due date changed from 06.02.2019 to 15.02.2019
- Status changed from New to Closed
- SW hat eine erste Variante bei LSZGS implementiert.
- Target version changed from 146 to 19.2.1
Also available in: Atom
PDF